home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
500 MB Nyheder Direkte fra Internet 2
/
500 MB nyheder direkte fra internet CD 2.iso
/
start
/
data
/
text
/
versions.txt
< prev
next >
Wrap
Text File
|
1994-09-21
|
168KB
|
3,527 lines
IBM PC & CLONES
Here's how to use BASIC on the IBM PC. (The IBM PC Junior, IBM
PC XT, IBM PC AT, IBM PS/1, IBM PS/2, and IBM Valuepoint are
similar. So are the microcomputers that are called
``IBM-compatible'' or ``IBM clones''.)
The keyboard (page 324)
The original IBM PC contained 83 keys, placed like this:
┌───┬───┐ ┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───
┬────────┬─────────┬──────────┐
│ │ │ │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ +
│ │ │ │
│F1 │F2 │ │Esc │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ =
│ Backsp │ NumLock │ScrollLock│
├───┼───┤ ├─────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─
┴──┬─────┼────┬────┼────┬─────┤
│ │ │ │LeftTab│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │
} │ │ 7 │ 8 │ 9 │ │
│F3 │F4 │ │Tab │ │ │ │ │ │ │ │ │ │ │ [ │
] │ │Home│ │PgUp│ - │
├───┼───┤ ├───────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬
───┤ ├────┼────┼────┼─────┤
│ │ │ │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │
~ │ │ 4 │ 5 │ 6 │ │
│F5 │F6 │ │Ctrl │ │ │ │ │ │ │ │ │ │ ; │ ' │
` │Enter│ │ │ ■ │ │
├───┼───┤ ├──────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴
───┼─────┼────┼────┼────┤ │
│ │ │ │ │ | │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │
│PrtSc│ 1 │ 2 │ 3 │ │
│F7 │F8 │ │Shift │ \ │ │ │ │ │ │ │ │ , │ . │ /
│Shift│ * │End │ │PgDn│ │
├───┼───┤ ├──────┴──┬┴───┴───┴───┴───┴───┴───┴───┴───┴───┴┬──┴──
───┼─────┴────┼────┴────┤ │
│ │ │ │ │ │
│ 0 │ . │ │
│F9 │F10│ │Alt │ Space
│CapsLock│ Ins │ Del │ + │
└───┴───┘ └─────────┴─────────────────────────────────────┴─────
───┴──────────┴─────────┴─────┘
In that diagram, I wrote the words ``Shift'', ``Backsp'',
``Tab'', and ``Enter''; but if you look at the actual IBM PC
keyboard, you'll see arrows on those keys instead. The SHIFT key
shows an arrow pointing up; the BACKSPACE key shows an arrow
pointing to the left; the TAB key shows arrows crashing into
walls; and the ENTER key shows an arrow that's bent. IBM put
arrows on those keys instead of words, to help people who don't
read English.
In January 1986, IBM began selling a fancier keyboard, which
contained 101 keys:
┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐
┌───────────┬──────────┬─────┐
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ │
│Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│
│PrintScreen│ScrollLock│Pause│
└───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘
└───────────┴──────────┴─────┘
┌─────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
┌────────┬────────┬────────┐ ┌───────┬────┬────┬─────┐
│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ │
│ │ │ │ │ │ │ │
│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│ │
Insert │ Home │ PageUp │ │NumLock│ / │ * │ - │
├─────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
├────────┼────────┼────────┤ ├───────┼────┼────┼─────┤
│LeftTab│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │
│ │ │ │ 7 │ 8 │ 9 │ │
│Tab │ │ │ │ │ │ │ │ │ │ │ [ │ ] │ \ │ │
Delete │ End │PageDown│ │ Home │ │PgUp│ │
├───────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
└────────┴────────┴────────┘ ├───────┼────┼────┤ │
│ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │
│ 4 │ 5 │ 6 │ │
│CapsLock│ │ │ │ │ │ │ │ │ │ ; │ ' │ Enter│
│ │ │ ■ │ + │
├────────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
┌────────┐ ├───────┼────┼────┼─────┤
│ │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ │
│ │ │ 1 │ 2 │ 3 │ │
│Shift │ │ │ │ │ │ │ │ , │ . │ / │ Shift│
│ │ │ End │ │PgDn│ │
├──────────┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─────────┤
┌────────┼────────┼────────┐ ├───────┴────┼────┤ │
│ │ │ │ │ │ │
│ │ │ │ │ . │ │
│Ctrl │ Alt │ Space │ Alt │ Ctrl│ │
│ │ ■ │ │ Ins │Del │Enter│
└───────────┴─────┴───────────────────────────┴─────┴─────────┘
└────────┴────────┴────────┘ └────────────┴────┴─────┘
At first, that fancier keyboard was available just on an IBM
computer called the IBM RS. Later, IBM made that keyboard
available for the newest versions of the IBM PC XT and IBM PC AT
and for the IBM PS/2. Today, IBM sells just that 101-key
keyboard; it no longer sells the old 83-key keyboard.
Which keyboard does your computer have? If you have an 83-key
keyboard, double-check to make sure you found the important keys
correctly. . . .
The left SHIFT key is above the ALT key.
The right SHIFT key is above the CAPS LOCK key.
The BACKSPACE key is in the top row and left of the NUM LOCK key.
The TAB key is left of the Q.
The ENTER key is above the PRT SC key.
To type a number easily, use the keys in the top row of the
main part of the keyboard. (For example, to type 4, press the key
that has a 4 and a dollar sign.) Do not press the number keys on
the right side of the keyboard: they produce numbers only if the
NUM LOCK key is pressed beforehand, by you or the computer. If
the NUM LOCK key was pressed to produce numbers, and you want to
stop making those keys produce numbers, just tap the NUM LOCK key
again.
Get started (page 325)
Start by obeying the instructions on pages 79 and 80. If you
have a hard disk, those instructions make the computer say
``C:\>''. If you don't have a hard disk, those instructions make
the computer say ``A>'' or ``A:\>''.
Versions of BASIC Two popular versions of BASIC have been
invented for the IBM PC.
The old version is called GWBASIC. (The GW stands for ``gee
whiz''). The new version is called QBASIC. (The Q stands for
``quick'').
MS-DOS versions 5 & 6 include a pair of files that make the
computer understand QBASIC. Those files are called ``QBASIC.EXE''
and ``QBASIC.HLP''.
Most older versions of MS-DOS include a file that makes the
computer understand GWBASIC. That file is usually called
``GWBASIC.EXE''; but some versions of MS-DOS call it
``BASIC.COM'' or ``BASICA.COM'' instead. Some versions of MS-DOS
lack the file altogether and can't do BASIC.
Getting into QBASIC If you're planning to use QBASIC (because
you bought MS-DOS version 5 or 6), type ``qbasic'' after the C
prompt, like this:
C:\>qbasic
The computer will say:
Welcome to MS-DOS QBasic
Press the Esc key, then the F6 key.
Instead of saying ``OK'', the computer will show a blinking
line near the screen's bottom left corner.
Getting into GWBASIC If you're planning to use GWBASIC (because
you bought an old version of MS-DOS), here's what to do. . . .
If you have a hard disk, try typing:
C:\>gwbasic
If the computer gripes (by saying ``Bad command or file name''),
try typing:
C:\>basica
If the computer still gripes (by saying ``Bad command or file
name'' again), try typing:
C:\>basic
If the computer still gripes (by saying ``Bad command or file
name'' again), try saying ``dos\gwbasic'' or ``dos\basica'' or
``dos\basic''.
If you do not have a hard disk, find the floppy that contains
GWBASIC.EXE or BASICA.COM or BASIC.COM. Insert that floppy into
drive A and say ``gwbasic'' or ``basica'' or ``basic''.
When you get into GWBASIC successfully, the computer will say
the word ``Ok''.
If the computer does not
say the word ``Ok'', you probably used the wrong version of DOS.
Make sure your version of DOS came from your computer's
manufacturer. For example, if IBM built your computer, use IBM's
PC-DOS, not a clone version of MS-DOS. If a clone company built
your computer, use your clone's version of MS-DOS, not IBM's
PC-DOS. Using the wrong version of DOS makes the computer print a
strange message, the screen go crazy, or the keyboard stop
working.
If you have an IBM PC
Junior, buy the BASIC cartridge and put it into the left
cartridge slot before you turn the computer on. (That cartridge
makes the Junior understand CIRCLE, PAINT, PLAY, TIMER, and the
BASIC words for disks.) If your Junior is attached to a monitor
instead of a TV, type ``width 80'' after the computer says
``Ok''.
How to leave QBASIC When
you finish using QBASIC, say ``File eXit'' (by tapping the Alt
key, then the F key, then the X key). If the computer asks ``Save
it now?'', say ``No'' (by pressing N).
How to leave GWBASIC
When you finish using GWBASIC, type the word ``system'' (and
press ENTER).
Math (page 326)
In QBASIC, when you give
a command (such as PRINT 5+2), the answer appears at the bottom
of the screen; after you examine the answer, press ENTER.
Three steps (page 328)
The way to program
depends on whether you're using GWBASIC or QBASIC.
GWBASIC In GWBASIC, if
you're too lazy to type the word RUN, just press the F2 key,
which makes the computer automatically type the word RUN for you
and automatically press the ENTER key for you. On an PC Junior,
press the Junior's Fn key before F2.
QBASIC In QBASIC, here's
how to program your computer.
First, say ``File New''
(by pressing the Alt key, then the F key, then the N key). If the
computer asks ``Save it now?'', say ``No'' (by pressing the N key
again).
Next, make sure the
blinking underline is in the top part of the screen. (If the
blinking underline is in the bottom part, move it to the top part
by pressing the F6 key).
Then type your program.
You do not have to type a number in front of each line; those
numbers are optional. Instead of typing ___
1 print "I love you"
2 print "you turn me on"
3 print "let's get married"
you can type:
print "I love you"
print "you turn me on"
print "let's get married"
Finally, say ``Run'' (by
pressing the F5 key). At the bottom of the screen, the computer
will print everything you requested; it will print:
I love you
you turn me on
let's get married
When you finish
examining that printing, press the ENTER key.
Another example (page 329)
In QBASIC, do not type the word LIST, since the top part of the
screen shows the list of your program already.
In GWBASIC, if you're too lazy to type the word LIST, just
press the F1 key, which makes the computer automatically type the
word LIST for you. Then press ENTER. On a PC Junior, press the Fn
key before F1.
Correcting errors (page 330)
In QBASIC, if you mess up a line, do not retype it underneath.
Instead, press the arrow keys to move to the first character you
want to revise, then repeatedly press the DELETE (or Del) key
until all the bad characters disappear, then type the characters
you wish to insert, then press the down-arrow key.
What if computer gripes? (page 330)
If the computer gripes at you, press the ENTER key immediately.
After pressing the ENTER key, correct the error by retyping the
line that the computer griped about.
Rearranging your program (page 331)
In QBASIC, the computer does not rearrange your program.
Here's how to make QBASIC erase a line. Move to that line (by
pressing the arrow keys). Then, while holding down the Ctrl key,
tap the Y key (which means ``Yank out the line'').
Here's how to make QBASIC insert a new line. Move to where you
want the new line to begin. Then, while holding down the Ctrl
key, tap the N key (which means ``New line'').
Ranges of lines (page 332)
QBASIC doesn't understand ranges of lines.
Arrow keys (page 332)
The DELETE key says ``Del'' on it. The INSERT key says ``Ins''
on it.
In QBASIC, do not press the INSERT key, and do not press the
ENTER key at the end of your correction.
Clear the screen (page 333)
Your keyboard lacks a CLEAR key. To clear the screen, give the
CLS command.
In GWBASIC, here's another way to clear the screen: while
holding down the Ctrl key, tap the HOME key. (On a PC Junior do
this instead: While pressing Ctrl, tap Fn then HOME.)
Print on paper (page 333)
There is no key marked ``PRINT''. To print a screen dump, do
this instead: if your keyboard is modern (and has 101 keys),
press the key marked ``PRINT SCREEN''. If your keyboard is
old-fashioned (and has just 83 keys), press the PrtSc key while
holding down the SHIFT key. If you have a PC Junior, press the Fn
key then the PrtSc key.
Most computers lack an
ECHO key. In QBASIC, you cannot echo. In GWBASIC, here's how to
echo: press the PrtSc key while holding down the Ctrl key. To
echo on the PC Junior, press the Fn key then the ECHO key.
In QBASIC, instead of
saying LLIST do this: say ``File Print'' (by pressing Alt then F
then P), then press ENTER.
GO TO (page 334)
The BREAK key is the
last key in the top row. If your keyboard has 83 keys, the BREAK
key says SCROLL LOCK on it; if your keyboard has 101 keys, the
BREAK key says PAUSE on it.
The BREAK key works only
if you simultaneously hold down the Ctrl key. So to abort a
program, do this: hold down the Ctrl key; and while you keep
holding down the Ctrl key, tap the BREAK key.
PC Junior Press the Fn
key before pressing BREAK. You do not have the press the Ctrl
key.
QBASIC Instead of typing
this ___
10 print "cat"
20 print "dog"
30 go to 10
you can type:
10 print "cat"
print "dog"
go to 10
Instead of using a number (such as 10), you can use a name (such
as JOE), but you must put a colon after the name, like this:
joe: print "cat"
print "dog"
go to joe
After you abort a QBASIC
program, pressing F5 makes the computer continue where it left
off; pressing SHIFT with F5 makes the computer run the program
from the beginning.
STOP (page 336)
In QBASIC, when the
computer encounters the word STOP in a program, the computer
stops running the program. Then it lists the program and
highlights the line of your program that said STOP.
Save on disk (page 336)
Before using a blank
disk, make sure the disk has been formatted. To learn how to
format a disk, read my MS-DOS chapter.
In QBASIC, instead of
typing SAVE ``JOE'', do this: say ``File Save'' (by pressing Alt
then F then S), then type JOE (and press ENTER). QBASIC doesn't
understand the word ``FILES''.
How to use other drives
When you tell the computer to save JOE, the computer normally
puts JOE into drive C's root directory (if you have a hard disk)
or drive A's directory (if you have no hard disk). If you want
the computer to put JOE into drive B instead, say ``b:joe''
instead of ``joe''.
To make GWBASIC print
the names of all the programs in drive B, type this:
files "b:"
Exception: if you're using an obsolete version of DOS (version 1
or version 1.05 or version 1.1), you must type this instead:
files "b:*.*"
How to choose a name (page 337)
Your program's name can be short (such as JOE) or long: up to 8
characters. The name's first character must be a letter; the
remaining characters should be letters or digits.
Load from disk (page 337)
In QBASIC, instead of typing LOAD ``JOE'', do this: say File
Open (by pressing Alt then F then O), then type JOE (and press
ENTER); if the computer asks ``Save it now?'', say ``No'' (by
pressing N).
Edit the disk (page 337)
QBASIC doesn't understand RENAME at all. In GWBASIC, instead of
saying RENAME ``JOE'' TO ``FRED'', say NAME ``JOE.BAS'' AS
``FRED.BAS'', to emphasize that JOE was written in BASIC.
Space on the disk (page 337)
QBASIC doesn't understand KILL at all. In GWBASIC, instead of
saying KILL ``JOE'', say KILL ``JOE.BAS''.
Tapes (page 337)
Since practically everybody who buys an IBM PC uses disks
instead of tapes, I won't bother explaining IBM's tape system.
FOR . . . NEXT (page 355)
To indent, you can hit the SPACE bar repeatedly. But to indent
more easily, hit the TAB key (which is left of the Q key and has
arrows on it).
In QBASIC, if you indent a line (by hitting the SPACE bar
repeatedly, or by hitting the TAB key), the computer will assume
you want to indent the line underneath also, and so the computer
will automatically indent that line for you. If the computer
indents a line that you don't want indented, erase the
indentation by hitting the BACKSPACE key.
Renumbering (page 367)
QBASIC doesn't understand RENUM.
The PAUSE key (page 367)
If your keyboard has just 83 keys, it lacks a PAUSE key, so to
pause do this instead: while holding down the Ctrl key, tap the
NUM LOCK key. To make the PC Junior pause, press the Fn key then
the PAUSE key.
To stop pausing, press the ENTER key.
Zones (page 368)
Your screen has five zones. Zones 1-4 are each 14 characters
wide. Zone 5 is 24 characters wide.
How many pixels? (page 372)
IBM-compatible computers
can handle several different screen modes:
Mode Video card
Pixels
Colors
1 CGA (or EGA, MCGA,
VGA) 320
by 200
4
2 CGA (or EGA, MCGA,
VGA) 640
by 200
2
3 Hercules
monochrome720 by 348
2
4 Olivetticolor 640
by 400
2
7 EGA (or VGA) 320
by 200
16
8 EGA (or VGA) 640
by 200
16
9 EGA (or VGA) 640
by 350
4 or 16
10 EGA mono (or VGA
mono) 640
by 350
4
11 MCGA (or VGA) 640
by 480
2
12 VGA 640
by 480
16
13 MCGA (or VGA) 320
by 200
256
For example, here's what
row 1 of that chart means:
To use mode 1, your video card must be CGA (or EGA or MCGA or
VGA).
That mode lets you use 320 values of X (numbered from 0 to 319).
That mode lets you use 200 values of Y (numbered from 0 to 199).
That mode lets the screen display 4 colors simultaneously.
Special mono modes Modes
3 and 10 require monochrome monitors; they do not work with color
monitors. In mode 3, you have just 2 ``colors'': black and white.
Special color modes In
mode 9, you usually get 16 colors, but you get just 4 colors if
the video card is EGA having just 64K of video RAM.
Mode 4 requires a color
video card made by Olivetti. That card is included in the AT&T
6300 computer.
Text mode There's also a
``mode 0'', which works on all computers and produces just text
(no graphics).
Versions of BASIC QBASIC
(which comes with DOS 5) understands all modes. GWBASIC
understands less:
GWBASIC using DOS 1, 1.1, 2, 2.1, or 3 understands just modes 0,
1, and 2.
GWBASIC using DOS 3.1 or 3.2 understands modes 0, 1, 2, and 3.
GWBASIC using DOS 3.3 or 4 understands modes 0 through 10.
Which mode to choose If
you're using QBASIC (which understands all modes), here's which
mode to choose:
Video card Which mode
to choose
Hercules monochrome 3
Olivetti color 4
CGA color 1 (for many
colors) or 2 (for many pixels)
EGA mono or VGA mono 10
EGA color 9
MCGA color 11 (for many
pixels) or 13 (for many colors)
VGA color 12 (for many
pixels) or 13 (for many colors)
For GWBASIC using DOS
3.3 or 4, use that same chart, but choose mode 9 instead of modes
11, 12, and 13.
For GWBASIC using DOS
3.1 or 3.2, use this chart instead:
Video card Which mode
to choose
Hercules monochrome 3
any other video card 1 (for many
colors) or 2 (for many pixels)
How to change mode
Before giving any commands about pixels, tell the computer which
mode you want. For example, if you want mode 1, say:
screen 1
Whenever you finish using pixels, return to text mode by
saying:
screen 0
width 80
The ``width 80'', which makes sure the screen will display 80
characters per line, is necessary only if you'd been using mode
1, 7, or 13.
PC Junior The PC Junior handles modes 0, 1, and 2. It also
handles special versions of modes 3, 4, 5, and 6:
PC Junior modePixelsColors
3 160 by 20016
4 320 by 200 4
5 320 by 20016
6 640 by 200 4
Modes 5 and 6 require at least 128K of RAM and require that you
give this command beforehand:
clear,,,32768
Fundamental shapes (page 372)
Say PSET instead of PLOT.
Colors (page 372)
In modes 4, 7, 8, and 12, you can choose from the 16 colors
listed on page 372.
In mode 1, you must choose from these 4 colors instead:
0. black
1. cyan (greenish blue)
2. magenta (purplish red)
3. cream (yellowish white)
For example, if you type ___
line (0,0)-(100,0),2
the computer will draw a line using color 2, which is magenta.
In modes 2, 3, and 11, you must choose from these 2 colors
instead:
0. black
1. white
In mode 10, you have these 4 choices:
0. black
1. cream
2. blink
3. white
In mode 9, you can usually choose from the 16 colors mentioned
on page 372; but if you're using mode 9 with an EGA card having
just 64K of RAM, you're restricted to the 4 colors used in mode
1.
In mode 13, you can choose from the 16 colors listed on page
372 ___ and many more colors, too! Here's the spectrum:
0 through 7: black, blue, green, cyan, red, magenta, brown,
cream
8 through 15: same colors as above, but lighter
16 through 31: shades of gray (from dark to light)
32 through 55: color blends (from blue to red to green to blue
again)
56 through 79: same color blends, but lighter
80 through 103: same color blends, but even lighter
104 through 175: same as 32 through 103, but darker
176 through 247: same as 104 through 175, but even darker
248 through 255: black
Advanced commands (and page #)
PLAY (page 374). In the PLAY command, you can use the symbol
``>'' to mean ``go up an octave'', and you can use the symbol
``<'' to mean ``go down an octave''. For example, if you say ___
play "g>cd<g"
the computer will play the note G, then go up an octave to play C
and D in
that higher octave, then go down to the original octave to play G
again. Exception: if you're using an obsolete version of DOS
(version 1 or 1.05 or 1.1), the symbols ``>'' and ``<'' don't
work.
The lowest note the
computer can play (which is the C in octave 0) is called ``note
1''. The highest note the computer can play (which is the B in
octave 6) is called ``note 84''. To make the computer play note
84, type this:
play "n84"
To make the computer play its lowest note (1), then its middle
note (42), then its highest note (84), type this:
play "n1n42n84"
PC Junior. If you turn
up the volume on your TV or monitor, and then say SOUND ON, you
can make the Junior's three voices sing simultaneously, like
this:
play "gab","efg","ccd"
While the first voice is singing ``gab'', the second voice sings
``efg'', and the third voice sings ``ccd''.
Random integers (388).
Instead of saying just RANDOMIZE, say RANDOMIZE TIMER. Exception:
if you're using GWBASIC with an obsolete version of DOS (version
1 or 1.05 or 1.1), you must say RANDOMIZE VAL(RIGHT$(TIME$,2)).
To get a random integer
between 1 and 5, instead of saying RND(5), say 1+INT(RND*5).
Types of numbers (397).
In GWBASIC, if your program involves trigonometry (SIN, COS, TAN,
ATN) or exponents (^, SQR, EXP, LOG), and you want those
computations done with double-precision accuracy, you must say
``gwbasic/d'' (instead of just ``gwbasic''), or say ``basica/d''
(instead of just ``basica'').
In QBASIC,
double-precision numbers can go higher than real numbers: the
highest permissible double-precision number is about 1D308.
Accuracy (397). In
QBASIC, if you type a double-precision number, the computer
handles just the first 15 digits accurately.
Joystick (408). The
coordinates of joystick A are STICK(0) and STICK(1). The
coordinates of joystick B are STICK(2) and STICK(3).
When the computer comes
to a line that mentions STICK(0), the computer looks at both
joysticks and computes STICK(0), STICK(1), STICK(2), and
STICK(3). If your program mentions STICK(1) or STICK(2) or
STICK(3), without mentioning STICK(0), the computer won't look at
the joysticks.
Mouse (408). Neither
GWBASIC nor QBASIC is designed to control a mouse.
Peek (414). Your
computer's memory is divided into segments. Each segment contains
64K of RAM or ROM.
Before saying PEEK or
POKE, tell the computer which segment to use. For example, if you
want the computer to use segment 3, begin your program by saying:
10 def seg=3
If you then say PRINT
PEEK(50000), the computer will peek at the 50000th cell of
segment 3. If you forget to say DEF SEG, or say just ___
10 def seg
without putting a number afterwards, the computer will use its
``favorite'' segment.
Although you can play
cute tricks by using the words PEEK and POKE, most IBM
programmers avoid those words, for three reasons:
1. PEEK and POKE are
awkward to use, because you must remember to say DEF SEG
beforehand.
2. The PEEKs and POKEs
that work on your computer system might not work on your friend's
computer system, because different clones and DOS versions use
different memory cells.
3. DOS and BASIC include
many commands that are easier than PEEK and POKE and accomplish
similar goals. To learn about them, browse through the DOS and
BASIC manuals that came with your computer.
If you insist on
fiddling with PEEKs and POKEs, read David Schneider's magazine
article, which reveals the secrets of dozens of memory cells.
Part 1 of his article is on pages 201-218 of the 11/12/85 issue
of PC Magazine; part 2 is on pages 187-208 of the 11/26/85 issue.
The articles are excerpted from the end of his book, called the
Handbook of BASIC for the IBM PC Revised and Expanded, published
by the Brady Book division of Simon & Schuster.
PUT (417). In GWBASIC,
if you want the record length to be more than 128, you must warn
the computer. For example, to warn the computer that you'll want
a record length of 400, say ``gwbasic/s:400'' (instead of just
``gwbasic''), or say ``basica/s:400'' (instead of just
``basica'').
APPLE MAC
Here's how to use BASIC on Apple's Mac Plus computer. (Other
Macs are similar.)
Microsoft BASIC (page 322)
When you buy the computer, make sure you also buy Microsoft
Quick BASIC. It costs $65 and comes on two disks. It works an all
Macs except the most
It works only on modern Macs (such as the Mac Plus, Mac SE, Mac
SE/30, Mac Classic, Mac LC, Mac 2, Mac 2cx, Mac 2ci, Mac 2si, and
Mac 2fx.) It does not work on older Macs (the 128K Mac, 512K Mac,
and 512KE Mac), since they contain obsolete ROM chips.
Make sure you buy ``Microsoft Quick BASIC'', not just
``Microsoft BASIC'', which is obsolete.
Here's how to use Microsoft Quick BASIC. (I'll also explain how
old ``Microsoft BASIC'' differs.)
The keyboard (page 324)
The keys are placed like this:
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬──────┐
┌───┬───┬───┬─────┐
│ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ │
│ │ │ │
│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Backsp│
│Clr│ = │ / │ * │
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
├───┼───┼───┼─────┤
│ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ │ │
│ │ │ │
│Tab │ │ │ │ │ │ │ │ │ │ │ [ │ ] │ │ │ 7
│ 8 │ 9 │ - │
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┘ │
├───┼───┼───┼─────┤
│ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ │
│ │ │ │
│Caps │ │ │ │ │ │ │ │ │ │ ; │ ' │ Return│ │ 4
│ 5 │ 6 │ + │
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┬───┤
├───┼───┼───┼─────┤
│ │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ │ │ │
│ │ │ │
│Shift │ │ │ │ │ │ │ │ , │ . │ / │Shift│ │ │ 1
│ 2 │ 3 │ │
├──────┬─┴───┴─┬─┴───┴───┴───┴───┴───┴───┴─┬─┴─┬─┴─┬───┼───┤
├───┴───┼───┤ │
│ │ │ │ │ │ │ │ │ │
│ │ │
│Option│Command│ Space │ \ │ │ ■ │ │ │ 0
│ . │Enter│
└──────┴───────┴───────────────────────────┴───┴───┴───┴───┘
└───────┴───┴─────┘
To the left of the SPACE bar, you'll see the COMMAND key. In
the diagram, I wrote the word ``Command'' on that key; but if you
look at your actual Mac keyboard, you'll see a picture of a
highway's cloverleaf on that key instead.
The keyboard contains a RETURN key and also an ENTER key. When
you're using BASIC, those keys do the same thing as each other.
You'll probably prefer the RETURN key, since your pinky can reach
it more easily.
Get started (page 325)
To start using the Mac, read the chapter that explains the Mac
Finder. Practice what's in that chapter, before you start playing
with BASIC.
When you've practiced what's in that chapter, here's how to
start using BASIC.
If you own an external hard drive, turn it on, and wait for the
clicking to stop. Then turn on the Mac. Adjust the Mac's
brightness knob, until you can read the screen. If the screen
doesn't show a trash can, insert System Tools Disk #1, then eject
it (by choosing Eject from the File menu).
Now your Mac screen shows the trash can, and your floppy-disk
drive is empty.
Insert the Microsoft Quick BASIC disk whose label says
``Program''. Then double-click the Program icon. (If you're using
old Microsoft BASIC instead, insert the disk whose label says
``Interpreter'', then double-click the Microsoft BASIC icon.)
The disk contains two versions of BASIC. The binary version
computes quickly: it's used by scientists who want blazing speed.
The decimal version computes slowly but handles decimals with
extra accuracy: it's used by accountants who are in no rush, but
insist on never being off by a penny.
To choose the binary version, double-click the ``Microsoft
Quick BASIC (b)'' icon. To choose the decimal version instead,
double-click the ``Microsoft Quick BASIC (d)'' icon instead.
The icon
will explode.
If you're
using Microsoft Quick BASIC (instead of old Microsoft BASIC), and
you don't have a hard disk or second floppy drive, the computer
will tell you to swap disks 16 times. Obey the computer, and be
patient!
Make the
command window appear on the screen and be active. To do that,
choose Command from the Windows menu, or use this short cut:
while holding down the COMMAND key, type a period. (Old Microsoft
BASIC permits an even shorter cut: just click the word
``Command'' at the bottom of the screen.)
Instead of
saying OK, the computer shows a blinking vertical line.
How to quit
Whenever you're done using BASIC, choose Quit from the File menu
(or tap the Q key while holding down the COMMAND key).
Then the
computer might say:
Current program is not saved. Do you
want to save it before proceeding?
Cancel No Yes
If the computer says that, click the word ``No''.
Then choose
Shut Down from the Special menu. When the computer says ``You may
now switch off your Macintosh safely'', turn off the Mac and then
any external hard drive.
Math (page 326)
When you
type a command (such as PRINT 5+2), the command appears at the
bottom of the screen, in the command window. The computer prints
the answer (7) at the top of the screen, in the output window.
Long commands on small screens
(page 328)
Keep your commands short. If you type a command that's too long
to fit on a line, the computer has difficulty handling it.
Three steps (page 328)
Programming your computer consists of three steps. . . .
Step 1: say NEW But instead of typing the word NEW, choose New
from the File menu. If you're lucky, you'll see horizontal
stripes next to the word ``List''.
If you're unlucky, the computer will say:
Current program is not saved. Do you
want to save it before proceeding?
Cancel No Yes
Click the word ``No''. You'll see horizontal stripes next to the
word ``List''.
Step 2: type your program Whatever you type will appear
underneath the word ``Listing'', in the list window. (Old
Microsoft BASIC says ``List'' instead of ``Listing''.)
You do not have to type a number in front of each line; those
numbers are optional. Instead of typing ___
1 print "I love you"
2 print "you turn me on"
3 print "let's get married"
you can type:
print "I love you"
print "you turn me on"
print "let's get married"
Step 3: run the program Instead of typing the word RUN and
pressing ENTER, choose Run Program from the Run menu (or tap the
R key while holding down the COMMAND key).
(Old Microsoft BASIC's Run menu says ``Start'' instead of ``Run
Program''.)
The list window will disappear. The computer will print
everything you requested; it will print:
I love you
you turn me on
let's get married
Then the list window will reappear, and you'll see your program
in the window again.
Summary of those steps Here's the rule: if you type a list of
instructions in the list window, the computer won't obey those
instructions until you choose Run Program (from the Run menu or
by pressing COMMAND R).
Changing the list window If your program's too long to fit in
the list window, the window will show just part of your program.
To see the rest of your program, use the window's scroll bars.
Clicking the window's zoom box makes the window expand, so that
it consumes the entire screen. Clicking the zoom box again makes
the window shrink back to its original size. (If your old
Microsoft BASIC lacks a zoom box, double-click the word ``List''
instead.)
Clicking the close box makes the window disappear. To make the
window reappear, choose List from the Windows menu (or tap the L
key while holding down the COMMAND key).
Another example (page 329)
Do not type the word
LIST. It's usually unnecessary, since the computer tries to
always show the list of your program on the screen. If the
computer ever fails to show the list on the screen, do not type
the word LIST: instead, choose List from the Windows menu (or
press COMMAND L).
Correcting errors (page 330)
If you mess up a line,
do not retype it underneath. Instead, do the following. . . .
Point at the right edge
of the rightmost character that you want to revise. Click once.
Repeatedly press the key marked BACKSPACE or DELETE, until all
the bad characters disappear. Then type the characters you wish
to insert. When you've finished typing them, click underneath the
entire program.
What if computer gripes? (page 330)
If you accidentally type
PRIMT instead of PRINT, when you run the program the computer
will gripe by saying:
Undefined subprogram
It will also put your program on the screen, and will draw a box
around the line it griped about.
Click the word ``OK'',
then revise the bad line.
Rearranging your program (page 331)
The computer does not
rearrange your program! The computer does not put the lines in
numerical order! If you type 80, the computer will not erase line
80!
How to erase a line
Point slightly left of the leftmost character in the line ___ so
that you're pointing at the gap between the leftmost character
and the window's left wall. Press the mouse's button; while you
keep pressing the button, drag down one line, but without
touching any characters. The line you want to erase will become
black. Lift your finger off the button. Press the BACKSPACE key.
The line will disappear. Click underneath the entire program.
How to insert a new line
Click at the right edge of the rightmost character of the line
above. Press the RETURN key. You'll see a gap to put the new line
in. Type the new line; do not press the RETURN key at the end of
it. Click underneath the entire program.
Ranges of lines (page 332)
To list from line 30 to
the end of your program, make the command window active (by
clicking it or choosing Command from the Windows menu or pressing
the COMMAND and period keys simultaneously). Then type:
list 30
The computer does not
understand ``LIST 30-80'' or ``LIST -80''.
To delete lines 30
through 80, make the command window active and type:
delete 30-80
After you type that command (and press the RETURN key), make the
list window active (by clicking it or choosing List from the
Windows menu).
Arrow keys (page 332)
To insert some text between two characters, click at the gap
between the two characters, then type the text.
To delete a group of characters, point at the left edge of the
first character in the group, then drag to the right edge of the
last character in the group. The characters you want to delete
will turn black. Lift your finger off the mouse's button. Press
the BACKSPACE key. The characters will disappear.
Clear the screen (page 333)
The CLEAR key doesn't work.
Print on paper (page 333)
Your keyboard lacks a PRINT key. Instead of pressing a PRINT
key, press the CAPS LOCK key, so that it stays down; then hold
down the SHIFT and COMMAND keys; while you keep holding down the
SHIFT and COMMAND keys, tap the 4 key. The printer will print
onto paper a copy of the entire screen. When the printer has
finished, tap the CAPS LOCK key, so that it pops back up. That
method works if your printer's an Imagewriter but not if it's a
Laserwriter.
Your keyboard lacks an ECHO key.
Your computer understands LPRINT.
Although your computer understands LLIST (if typed in the
command window), an easier way to list your program on paper is
to make the list window active, then choose Print from the File
menu, then click OK.
GO TO (page 334)
Instead of typing this ___
10 print "cat"
20 print "dog"
30 go to 10
you can type:
10 print "cat"
print "dog"
go to 10
If you delete the 10 from the top line, the computer will gripe
when it sees ``go to 10''.
Instead of using a number (such as 10), you can use a name
(such as JOE), but you must put a colon after the name, like
this:
joe: print "cat"
print "dog"
go to joe
To abort a program, choose Stop from the File menu, or tap the
period key while holding down the COMMAND key. (Old Microsoft
BASIC puts ``Stop'' in the Run menu instead of the File menu.)
After you've aborted a program, if you wish to see a LIST, make
the list window active (by choosing List from the Windows menu,
or pressing COMMAND with L).
How to single-step trace your program If a program runs faster
than your eye can see or your mind can think, slow it down. To do
that, instead of choosing Run Program from the Run menu, choose
Step from the Run menu (or press COMMAND with T).
That makes the computer
do just one line or subline of your program; then it will pause.
When you choose Step again, the computer will do the next line or
subline. Each time you choose Step, the computer will do one more
line or subline. Each time the computer does a line, it also
shows the program in the list window, and puts a box around the
line it just did.
Love (page 334)
If a program involves a
semicolon with a GO TO, begin the program by saying WIDTH 61,
like this:
width 61
10 print "love";
go to 10
If you forget to say WIDTH 61, the computer will print just one
line of love and then do nothing until you abort.
STOP (page 336)
When the computer
encounters the word STOP in a program, the computer stops running
the program. Then it lists the program and puts a box around the
line of your program that said STOP.
Save on disk (page 336)
If you buy a blank disk
and want to use it, you must initialize the disk. To learn how to
do that, read the chapter that explains the Mac Finder.
After you initialize
that disk, you should copy ``Microsoft Quick BASIC (b)'' and
``System Folder'' onto that disk, by dragging those icons to that
disk. To learn how to do that, read the chapter that explains the
Mac Finder.
You should not save
programs on the original ``Microsoft BASIC'' disk. Instead, save
your programs on a new disk that you turned into an easy-to-use
BASIC disk.
So before you write
programs to save, turn off the computer, insert a new easy-to-use
BASIC disk, and then turn the computer back on.
Before typing SAVE
``JOE'' or FILES, make the command window active (by clicking it
or choosing Command from the Windows menu or pressing the COMMAND
and period keys simultaneously).
Here's a short cut:
instead of activating the command window and then saying SAVE
``JOE'', just choose Save from the File menu and then type JOE
(followed by RETURN).
How to choose a name (page 337)
Your program's name can
be short (such as JOE) or long: up to 31 characters. Short names
are better, because they can fit in small windows.
Load from disk (page 337)
Before saying LOAD "JOE"
or RUN "JOE", activate the command window. Here's a short cut:
instead of activating the command window and saying LOAD "JOE",
just choose Open from the File menu and double-click JOE.
Edit the disk (page 337)
Instead of saying RENAME
``JOE'' TO ``FRED'', say NAME ``JOE'' AS ``FRED''.
Tapes (page 337)
Your computer can't handle tapes.
FOR . . . NEXT (page 355)
To indent, you can hit the SPACE bar repeatedly. But to indent
more easily, hit the TAB key. Hitting the TAB key has the same
effect as hitting the SPACE bar four times.
If you indent a line (by hitting the SPACE bar repeatedly, or
by hitting the TAB key), the computer will assume you want to
indent the line underneath also, and so the computer will
automatically indent that line for you.
If the computer indents a line that you don't want indented,
erase the indentation, by hitting the BACKSPACE key four times.
Renumbering (page 367)
Your computer doesn't understand RENUM.
The PAUSE key (page 367)
Your keyboard lacks a PAUSE key ___ but you don't need one.
When you list a program, the listing automatically pauses when
the list window is filled. While running a program, you can stop
temporarily (by choosing Stop from the File menu or pressing
CONTROL with a period), then continue where you left off by
choosing Continue from the Run menu (or pressing CONTROL with G).
Old Microsoft BASIC understands Continue but not CONTROL with
G.
Zones (page 368)
Your screen has 5 zones. Zones 1-4 are each 14 characters wide;
zone 5 is 5 characters wide. Altogether, the screen is 61
characters wide.
Those measurements are for standard-size characters. Your
computer can also produce characters that are extra-narrow or
extra-wide.
Loops (page 369)
If a program involves zones with a GO TO, begin the program by
saying WIDTH 61, like this:
width 60
10 print "hi",
go to 10
How many pixels? (page 372)
The X coordinate goes from 0 to 491. The Y coordinate goes from
0 to 297.
The high-numbered pixels hide behind the list and command
windows. To see those pixels, put this line at the bottom of your
program ___
9999 go to 9999
That line creates an infinite loop, which keeps the output window
on the screen. When you finish staring at the pixels in the
output window, abort the program by choosing Stop from the File
menu (or press COMMAND with period).
Fundamental shapes (page 372)
Say PSET instead of PLOT. The computer draws each shape in
black, on a white background.
PAINT (page 372)
Your computer doesn't
understand the word PAINT.
Colors (page 372)
The standard Mac
displays just black and white: it can't display any other colors.
The code number for white is 0; the code number for black is 1.
(Any even number produces white; any odd number produces black.)
Advanced commands (and page #)
PLAY (page 374). Your
computer doesn't understand the word PLAY.
Random integers (388).
Instead of saying just RANDOMIZE, say RANDOMIZE TIMER. To get a
random integer from 1 to 5, instead of saying RND(5), say
1+INT(RND*5).
Types of numbers (397).
BASIC comes in two versions ___ binary and decimal ___ which you
choose by clicking the appropriate icon.
Suppose you type a
number containing a decimal point. If that number contains fewer
than 7 digits, it's a real; if it contains more than 7 digits,
it's double-precision; if it contains exactly 7 digits, the
binary version treats it as a real, but the decimal version
treats it as double-precision instead.
Accuracy (397). If you
type a double-precision number, the binary version handles it to
an accuracy of 15 to 16 digits, but the decimal version handles
it to an accuracy of just 14 digits.
Variables (397). If a
variable is simple (such as X), the binary version treats it as
real, but the decimal version treats it as double-precision.
Joystick (408). Your
computer doesn't use a joystick.
APPLE 2 FAMILY
Here's how to use BASIC on the Apple 2c computer. (The Apple
2c+ and 2GS are similar.) I'll explain how the Apple 2, 2+, and
2e differ.
The keyboard (page 324)
On the Apple 2c, the keys are placed like this:
┌─────┬───┬────────┐
│ │ │ │
│Reset│40 │Keyboard│
└─────┴───┴────────┘
┌────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬──────┐
│ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │
│Esc │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Delete│
├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬────┤
│ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ │ │
│Tab │ │ │ │ │ │ │ │ │ │ │ [ │ ] │ \ │
├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴────┤
│ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │
│Control│ │ │ │ │ │ │ │ │ │ ; │ ' │ Return│
├───────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───────┤
│ │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ │
│Shift │ │ │ │ │ │ │ │ , │ . │ / │ Shift│
├────────┬┴──┬┴───┴───┴┬──┴───┴──┬┴───┴───┴─┬─┴─┬─┴─┬───┬───┤
│ │ ~ │ │ │ │ │ │ │ │
│CapsLock│ ` │OpenApple│ Space │SolidApple│ │ ■ │ │ │
└────────┴───┴─────────┴─────────┴──────────┴───┴───┴───┴───┘
The keys next to the SPACE bar are called the Apple keys. In
the diagram, I wrote the words ``Open Apple'' and ``Solid Apple''
on those keys; but if you look at your actual Apple 2c keyboard,
you'll see pictures of apples on those keys instead.
There's no BACKSPACE key.
To correct an error, press the left-arrow key, until you get
back to where the error was. Then correct the error, by retyping.
Then, if you wish, press the right-arrow key to move to the
right.
Your computer has a key marked DELETE, but it doesn't work when
you're using BASIC.
The ENTER key says RETURN on it.
Apple 2e The Apple 2e keyboard lacks a 40 key and a KEYBOARD
key.
Apple 2 and 2+ The zero key is Swedish. The CONTROL key says
CTRL on it. The letters are automatically capitalized. The keys
are rearranged slightly. The following keys are missing: DELETE,
TAB, CAPS LOCK, OPEN APPLE, SOLID APPLE, KEYBOARD, 40,
down-arrow, up-arrow, left-bracket, right-bracket, backslash, and
accent.
Get started (page 325)
Cut into the right side of your computer, you'll see a
horizontal slot about 5 inches long. That slit's the entrance to
the built-in drive.
At the center of the slit is a door, which is the same color as
the keys on the keyboard. To open the door, push it to the left;
then it will automatically pop up. To close the door, push it
down. Practice opening and closing it.
Then open the door. Remove any disk from the built-in drive.
Put the ``System Utilities ProDOS disk'' into the built-in drive;
when inserting the disk, make sure the disk's label is on top of
the disk, and make sure the disk's big oval cutout goes into the
drive before the label does. After putting the disk into the
drive, close the door.
The computer's green power switch is at the computer's rear,
and has the numbers 0 and 1 on it. Flip the power switch on, by
pressing the 1.
Turn on the TV or monitor.
If you're using a TV, turn it to channel 3 or 4. To switch the
computer from channel 3 to channel 4 or back to channel 3, flip
the channel-selection switch, which is on the box attached to the
back of the computer. If the writing on the TV looks fuzzy,
adjust the TV's fine tuning.
Adjust the screen's brightness and contrast.
The computer
will put several messages onto the screen. Eventually, you'll see
the main menu, which looks like this:
1. Copy files
2. Delete files
3. Rename files
4. Lock/unlock files
5. Duplicate a disk
6. Format a disk
7. Identify and catalog a disk
8. Advanced operations
9. Exit system utilities
Tap the 9 key, then tap the RETURN key twice.
You'll see
this symbol on the screen, at the upper-left corner:
]
That symbol's called a bracket. It means everything's OK. Your
computer prints a bracket instead of the word OK.
You can make
the characters on your screen be either thin or fat. The screen
is wide enough to hold 80 thin characters per line, or 40 fat
characters. Fat characters are easier to read, so choose fat
characters if your eyesight is poor, or if you're using a cheap
TV (which is blurry) instead of a monitor.
To choose
fat characters (40 per line), tap the ESC key, then the 4 key. To
choose thin characters (80 per line), tap the ESC key, then the 8
key.
Apple 2, 2+,
and 2e The disk drive and its slot are in a separate box (instead
of being built into the right side of the computer). If you have
two disk drives, begin by using disk drive #1, not disk drive #2.
Open the
disk drive's door, by pulling the door out and up. Remove any
disk from the drive. If you have a 2e, insert the ``ProDOS User's
Disk''; if you have a 2 or 2+, insert the ``DOS 3.3 System Master
Disk'' instead. When inserting the disk, make sure the disk's
label is on top of the disk, and make sure the disk's big oval
cutout goes into the drive before the label does.
Close the
door, by pushing it down and in.
Turn on the
TV or monitor. If you're using a TV, turn it on to channel 33.
On the back
of the computer, you'll see the computer's power switch, which is
black. Flip it to the ON position.
Here's what happens next, if you have a 2e:
At the top of the screen, a message will appear briefly. If
your 2e is old (manufactured before February 1985), the message
says ``Apple ][''; if your 2e is new (or you've upgraded your old
2e), the message says ``Apple 2e''. Look at the message, to
double-check whether your 2e is old or new.
If your 2e is old, it can't handle lower-case letters well, so
you must type just capitals. To type capitals easily, press the
CAPS LOCK key, and make sure the CAPS LOCK key stays down.
Your 2e will also print this menu:
YOUR OPTIONS ARE:
? - TUTOR: PRODOS EXPLANATION
F - PRODOS FILER (UTILITIES)
C - DOS <-> PRODOS CONVERSION
S - DISPLAY SLOT ASSIGNMENTS
T - DISPLAY/SET TIME
B - APPLESOFT BASIC
Tap the B key.
Regardless of whether you have a 2, 2+, or 2e, you'll
eventually see this symbol near the screen's left edge:
]
That symbol's called a bracket. It means everything's OK. Your
computer prints a bracket instead of the word OK.
The characters are fat (40 per line). Your Apple might be able
to make the characters thin (80 per line), but your Apple handles
thin characters reliably only if your Apple is a new 2e that also
contains an 80-column card. If you have that kind of Apple and
want thin characters, say ___
pr#3
and press the RETURN key.
Ranges of lines (page 332)
Instead of saying DELETE, say DEL. To delete lines 30 through
80, type this:
del 30,80
Arrow keys (page 332)
To edit line 30, first put line 30 onto the screen, by saying
LIST 30. (Say LIST, not EDIT: your computer doesn't understand
the word EDIT.)
On your computer, the cursor does not blink: it's a solid
square that indicates where you'll be typing.
Your computer uses the Catholic method of editing, which uses
the Catholic cross and its effect on bodies and souls. Here are
the details. . . .
Tap the ESC key. A cross will appear in the middle of the
cursor.
Move the cursor (including its cross) up to the line you want
to edit, by pressing the up-arrow key repeatedly. Then tap the
ESC key again, to get rid of the cross.
(The up-arrow key works only when you see a cross, because,
according to Catholics, ``to get to heaven you must follow the
Cross''. Most other keys are Temptations: they're effective only
when you do not see a cross.)
Move the cursor to the part of the line you want to correct, by
pressing the right-arrow key repeatedly.
Then make your corrections.
Replace To replace a character, move the cursor to the
character you want to replace, then type the new character you
want instead.
Delete To delete a group
of characters, move the cursor to the first character in the
group.
Create a cross (by
tapping the ESC key), then move the cross across the group of
characters (by pressing the right-arrow key), until you've passed
the last character in the group. Then get rid of the cross (by
tapping the ESC key again).
The characters that the
cross passed over will go to heaven and disappear from their
earthly existence. (Their bodies will remain on the screen, but
their souls will departed so the characters won't affect any
future LIST.)
Insert To insert extra
characters, move the cursor to the place where you want the extra
characters to begin appearing.
Then move the cursor up
(by tapping the ESC key, then the up-arrow key, then the ESC
key). Type the characters you want to insert. Then create a cross
(by tapping the ESC key), and move the cross to where you want
the extra characters to begin appearing (by tapping the
down-arrow and left-arrow keys). Finally, get rid of the cross.
When you finish editing
When you've finished correcting the line, press the right-arrow
key repeatedly, until you get past the last character in the
line. Then press the RETURN key. To see what happened to the
line, LIST it.
Why bother? Because that
Catholic method of editing is so long-winded, most programmers
don't bother using it: instead, they type the entire line over!
Apple 2e The editing
process is the same as for the 2c, with just two exceptions:
1. To begin the whole
editing process, tap the ESC key, then the left-arrow key, then
move the cursor up to the line you want to edit.
2. You see the cross
only if your Apple 2e contains an 80-column card and you
previously said PR#3. Otherwise, the cross is invisible: when the
cross is at the cursor, the cursor covers up the cross, so that
you can't see the cross (even though the cross is there).
Apple 2 and 2+ The
method of editing is even more complicated, so don't bother! Just
type the whole line over again.
Spaces after numbers (page 332)
Your computer does not
automatically put spaces after numbers.
Spaces before numbers (page 333)
Your computer does not
automatically put spaces before positive numbers.
For example, if you give
this command ___
print "the temperature is";4+25;"degrees"
the computer prints:
the temperature is29degrees
The computer does not automatically put a space before or after
the 29.
To put spaces near the
29, put spaces in the strings nearby, like this:
print "the temperature is ";4+25;" degrees"
Multiple calculations (page 333)
If you give this command ___
print 6+2;6-2
your computer will print the answer to 6+2 (which is 8) and also
print the answer to 6-2 (which is 4), but won't put any spaces
between the answers. Your computer will print:
84
To force your computer to put a space between the answers,
replace the semicolon by a space in quotation marks, like this:
print 6+2" "6-2
That makes your computer print:
8 4
Clear the screen (page 333)
Your keyboard lacks a CLEAR key. Instead of pressing a CLEAR
key, press the ESC key, then type an @ symbol. (To type the @
symbol, remember to press the SHIFT key.)
Your computer doesn't understand the CLS command. Instead of
typing CLS, type the word HOME.
Print on paper (page 333)
Your keyboard doesn't have a PRINT key or ECHO key, and your
computer doesn't understand LPRINT or LLIST. To print on paper,
here's what to do instead. . . .
Make sure the printer is plugged in, turned on, and full of
paper. Make sure any lights indicating POWER, READY, SELECT, and
ON LINE are glowing.
To activate the printer, type this:
pr#1
That makes the computer use paper instead of your screen. After
you type PR#1, everything you and the computer type will appear
on paper instead of on the screen.
If you ever want to use your screen again, you must deactivate
the printer, by typing:
pr#0
For example, to make the computer print just ``I love you'' on
paper, you must activate the printer, then tell the computer to
print ``I love you'', then deactivate the printer, like this:
pr#1
print "I love you"
pr#0
If a program prints on the screen but you want it to print on
paper instead, activate the printer before you type RUN. Here's
how:
pr#1
list
pr#0
In the middle of your program, one of the lines can say
``pr#1''. But if a line of your program simply says ___
30 pr#1
the computer will get confused. Instead, say:
30 d$=chr$(4)
31 ?d$"pr#1"
To make line 60 deactivate the printer, say:
60 ?d$"pr#0"
For example, this
program prints two poems. It prints ``love is like a dove'' on
your screen, and prints ``life is full of strife'' on paper:
new
10 print "love"
20 print "is like a dove"
30 d$=chr$(4)
31 ?d$"pr#1"
40 print "life"
50 print "is full of strife"
60 ?d$"pr#0"
run
GO TO (page 334)
To abort a program, hold
down the CONTROL key; and while you keep holding down the CONTROL
key, tap the C key.
If the computer is
printing on the screen faster than you can read, you can make the
computer slow down. To slow the printing, type this command:
speed=0
For example, to make the
computer LIST your program slowly, and also PRINT slowly when it
runs your program, type this:
speed=0
list
run
To make the computer
print quickly again, at full speed, type this command:
speed=255
SPEED=0 means slow;
SPEED=255 means fast. For an intermediate speed, pick a number
between 0 and 255.
Save on disk (page 336)
If you buy a blank disk
and want your computer to use it, you must turn the blank disk
into an Apple disk.
To do that, turn the
computer off, make sure the built-in drive contains the ``Systems
Utilities ProDOS disk'', close the door, then turn the computer
back on.
The screen will
eventually show you the main menu, which looks like this:
1. Copy files
2. Delete files
3. Rename files
4. Lock/unlock files
5. Duplicate a disk
6. Format a disk
7. Identify and catalog a disk
8. Advanced operations
9. Exit system utilities
Tap the 6 key, then tap the RETURN key four times.
The computer will say:
Place the disk you wish to format in the built-in drive.
Press RETURN to continue.
Obey the computer: put the blank disk into the built-in drive,
then press the RETURN key.
The computer will grunt
several times loudly: hold your ears! 20 seconds later, the
computer will say:
Format complete.
Press RETURN to continue, ESC to return to the main menu.
The blank disk has been turned into an Apple disk.
Press the ESC key. You'll see the main menu again. Tap the 9
key, then tap the RETURN key twice. Then tap the ESC key,
followed by the 4 key (for fat characters) or the 8 key (for thin
characters).
You cannot copy a program onto the System Utilities ProDOS
disk. Instead, copy your program onto a blank disk that you
turned into an Apple disk.
Omit quotation marks.
Most computers: SAVE "JOE"
Your computer: save joe
Instead of saying FILES, say CATALOG or CAT. If you say CAT,
the computer will print an abridged catalog.
How to use drive 2 The built-in drive is called drive 1. If you
buy an extra drive, the extra is called the external drive; it's
also called drive 2.
Normally, the computer uses drive 1. If you want it to use
drive 2 instead, put a comma and a D2 at the end of the disk
command. For example, to get a catalog of drive 2, say:
catalog,d2
To save JOE in drive 2, say:
save joe,d2
If you put a comma and D2 at the end of a command, the Apple
assumes you're more interested in drive 2 than in drive 1.
Therefore, it will automatically use drive 2 instead of drive 1
for all future commands. If you ever want to use drive 1 again,
you must give a command that ends in a comma and D1.
How to copy an entire disk To copy an entire disk, put the
System Utilities ProDOS disk into the built-in drive. Turn the
computer off, then on again. When you see the main menu, tap the
5 key, then tap the RETURN key three times.
The computer will say:
Place the source disk in the built-in drive.
Press RETURN to continue.
Obey the computer: into the built-in drive, put the disk you want
to copy; then press the RETURN key.
The computer will say:
Place the destination disk into the built-in drive.
Press RETURN to continue.
Obey the computer: into the built-in drive, put a blank disk;
then press the RETURN key twice.
The computer will turn the blank disk into an Apple disk. Then
it will say, ``Place the source disk into the built-in drive.''
Into the built-in drive, put the disk you want to copy; then
press the RETURN key. Then it will say, ``Place the destination
disk into the built-in drive.'' Grab the blank disk that you had
just turned into an Apple disk, and put it into the built-in
drive; then press the RETURN key.
Seven more times, the computer will tell you to place the
source disk and then the destination disk into the built-in
drive. Obey the computer: swap the disks seven more pairs of
times, and press the RETURN key after each time.
Finally, the computer will say:
Disk copy complete.
Press RETURN to continue, ESC to return to the main menu.
Press the ESC key. You'll see the main menu. Tap the 9 key, then
the RETURN key twice, then say how wide you want the characters
to be (by tapping ESC then 4, or ESC then 8).
How to create a
quick-start disk To create a quick-start disk (which helps start
using BASIC faster), get a blank disk, and turn it into an Apple
disk (by using the System Utilities ProDOS disk). Then get the
main menu on the screen again, and make sure the System Utilities
ProDOS disk is in the main drive. With the main menu still on the
screen, tap the 1 key, tap the RETURN key four times, tap the
down-arrow key six times, tap the right-arrow key, tap the
down-arrow key again, tap the right-arrow key again, and tap the
RETURN key.
The computer will say:
Place the destination disk in the built-in drive.
Press RETURN to continue.
Obey the computer: put the blank Apple disk into the built-in
drive, then press the RETURN key. The computer will tell you to
swap disks four more times. Finally, the computer will say:
Copying complete.
Press RETURN to continue, ESC to return to the main menu.
Press the ESC key. You'll see the main menu. Tap the 9 key, then
the RETURN key twice, then say how wide you want the characters
to be (by tapping ESC then 4, or ESC then 8).
You've created a
quick-start disk. In the future, whenever you want to start using
the computer quickly, put the quick-start disk into the drive
(instead of the System Utilities ProDOS disk), and then turn on
the computer. The computer will say:
PRODOS BASIC
]
Then just say how wide you want the characters to be (by tapping
ESC then 4, or ESC then 8).
If you save a program on
that disk, and call the program STARTUP (instead of JOE), the
computer will automatically run that program whenever you start
up the computer.
If you make the top two
lines of that program say ___
10 d$=chr$(4)
11 ?d$"pr#3"
the computer will automatically tap the ESC key and 8 key for
you.
Apple 2e To turn a blank
disk into an Apple disk, turn the computer off, make sure drive 1
contains the ProDOS User's Disk, close the door, and turn the
computer back on. The computer will say PRODOS USER'S DISK. Tap
the F key; the computer will say FILER. Tap the V key; the
computer will say VOLUME COMMANDS. Tap the F key; put the blank
disk into drive 1; press the RETURN key three times; the computer
will say FORMATTING. 25 seconds later, the computer will say
FORMAT COMPLETE; the blank disk has been turned into an Apple
disk. Press the ESC key twice, then the Q key, then the RETURN
key.
To copy an entire disk,
put the ProDOS User's Disk into drive 1. Turn the computer off,
then on again. The computer will say PRODOS USER'S DISK. Tap the
F key; the top of the screen will say FILER. Tap the V key; the
top of the screen will say VOLUME COMMANDS. Tap the C key; grab
the disk you want to copy, and put it in drive 1; put a blank
disk in drive 2; press the RETURN key six times. When the
computer finishes copying, press the ESC key twice, then the Q
key, then the RETURN key.
Apple 2 and 2+ To turn a blank disk into an Apple disk, put the
blank disk into drive 1 and then type:
NEW
10 PRINT "HELLO"
INIT HELLO
The drive's red light will glow for about 30 seconds. When it
stops glowing, your blank disk is finally an Apple disk; it's
called a ``slave of a DOS 3.3 System Master''. It's also a
quick-start disk.
Your computer doesn't understand CAT: say CATALOG.
To copy an entire disk, put the DOS 3.3 System Master disk into
drive 1. Type RUN COPYA and press the RETURN key. The computer
will say APPLE DISKETTE DUPLICATION PROGRAM. Grab the disk you
want to copy, and put it in drive 1; put a blank disk in drive 2;
press the RETURN key five times. The computer will copy all
information from drive 1's disk to the blank disk. (In the
process, it will also turn the blank disk into an Apple disk.)
Then the computer will ask DO YOU WANT TO MAKE ANOTHER COPY? If
you don't, type an N and then press the RETURN key.
How to choose a name (page 337)
Your program's name can be short (such as JOE) or long: up to
15 characters. The name's first character must be a letter; the
remaining characters must be letters, digits, or periods.
Load from disk (page 337)
Omit quotation marks.
Most computersYour computer
LOAD "JOE" load joe
RUN "JOE" run joe
Edit the disk (page 337)
Instead of saying RENAME ``JOE'' TO ``FRED'', say:
rename joe,fred
Space on the disk (page 337)
To erase JOE from the disk, instead of saying KILL ``JOE'' say:
delete joe
Tapes (page 337)
The Apple 2c can't handle tapes.
Long variable names (page 340)
Variable names must be short. The name of a numeric variable
must be just 1 or 2 characters; the name of a string variable
must be just 1 or 2 characters followed by a dollar sign. If you
try to make the variable's name longer than that, the computer
will handle it unreliably.
If you want a variable name that's 2 characters long, avoid the
following 2-character names, which have special meanings: TO, IF,
ON, FN, GR, AT, OR.
INPUT (page 341)
In the INPUT statement,
the computer's question is called the prompt. The prompt begins
and ends with a quotation mark. On your computer, the prompt
should end with a question mark then a space then a quotation
mark. . . .
Most computers: 10 INPUT "WHAT
IS YOUR NAME";N$
Your computer: 10 input "What
is your name? ";n$
Usually, you can abort a
program by tapping the C key while holding down the CONTROL key.
But while the computer is doing an INPUT statement, that method
won't work, unless you press the RETURN key afterwards.
Fancy relations (page 349)
Your computer can't
handle the letter A followed by the word THEN. For example, it
can't handle:
if x=a then print "wow"
To prevent the letter A
from being next to THEN, reverse the equality ___
if a=x then print "wow"
or use parentheses to separate the A from the THEN:
if (x=a) then print "wow"
ELSE (page 349)
Your computer doesn't
understand the word ELSE.
FOR . . . NEXT (page 355)
If you indent the lines
between FOR and NEXT, your computer ignores the indentation. When
you LIST your program, you won't see any indentation. So don't
bother to indent.
Renumbering (page 367)
Your computer doesn't
understand RENUM.
The PAUSE key (page 367)
Your keyboard lacks a
PAUSE key. To make the computer pause, hold down the CONTROL key;
and while you keep holding down the CONTROL key, tap the S key.
To stop pausing, press
the SPACE bar.
Apostrophe (page 367)
Instead of an
apostrophe, type a colon followed by the word REM (which stands
for ``remark''). For example:
40 c=40: rem because Russ has 40 computers
Zones (page 368)
If you chose 80
characters per line (by tapping ESC and then 8), your screen has
5 zones, and each zone is 16 characters wide.
If you chose 40
characters per line (by tapping ESC and then 4), your screen has
just 3 zones. The left zone is 16 characters wide; the middle
zone is also 16 characters wide; the right zone is just 8
characters wide.
LOCATE (page 371)
Your computer doesn't understand the word LOCATE. To print
``DROWN'' beginning at line 3's 7th position, say this:
vtab 3: htab 7: print "DROWN"
Pixels (page 372)
Apple handles pixels differently from most other computers.
Here are the details. . . .
Simple graphics To use simple, low-resolution graphics, type:
gr
That makes the computer split the screen into two parts. The top
part of your screen will be used for graphics. The bottom of your
screen will not be used for graphics: instead, it will be used
for non-graphics (which Apple calls ``text'').
When you type GR, the computer makes the top part of your
screen (the graphics part) be entirely black.
Your next step is to choose a color to draw in. You can choose
these colors:
0. black
1. magenta (purplish red)
2. dark blue
3. lavender (light purple)
4. dark green
5. gray
6. blue (light greenish blue)
7. light blue
8. brown
9. orange
10. gray
11. pink
12. green
13. yellow
14. aqua (light greenish blue)
15. white
You must also choose which pixel you want to color: the pixel's X
and Y coordinates must each be from 0 to 39. For example, to make
pixel (31,37) become pink, type this:
color=11: plot 31,37
To make pixel (5,9) and pixel (17,21) both become yellow, type
this:
color=13: plot 5,9: plot 17,21
If the colors on your TV look wrong, adjust your TV's COLOR and
TINT dials.
To draw a green horizontal line from pixel (4,19) to pixel
(8,19), type this:
color=12: hlin 4,8 at 19
To draw a blue vertical line from pixel (4,20) to pixel (4,30),
type this:
color=6: vlin 20,30 at 4
To print ``welcome to the art
museum'' on the bottom part of the screen (which is for
non-graphics), just say:
print "welcome to the art museum"
Whenever you want to stop using
graphics, type:
text: home
That tells the computer to use the entire screen for non-graphics
(TEXT).
You can put all those ideas into a
program, like this:
10 home: gr
20 color=11: plot 31,37
30 color=13: plot 5,9: plot 17,21
40 color=12: hlin 4,8 at 19
50 color=6: vlin 20,30 at 4
60 print "welcome to the art museum"
70 for i = 1 TO 4000: next
80 text: home
Line 10 includes the word HOME, to make sure that the bottom part
of the screen (for non-graphics) begins entirely black. Lines
20-50 draw a picture. Line 60 prints a caption. Line 70 makes the
computer count to 4000: while the computer counts, you can admire
the picture that the computer drew; if you want to admire the
picture longer, change the 4000 to 10000. Line 80 returns the
computer to its normal state, which is non-graphics.
In that program, lines 10, 70, and
80 are particularly important. Every low-resolution graphics
program should begin by saying ``HOME: GR'', and should end by
saying ``FOR I'' and ``TEXT: HOME''.
High-resolution graphics
High-resolution graphics differs from low-resolution graphics in
the following ways . . .
For low-res, you say ``GR''. For
high-res, you say ``HGR: VTAB 21''.
for low-res, you say ``COLOR='' and
choose a color from 0 to 15. For high-res, you say ``HCOLOR=''
and choose one of these high-res colors:
0. black
1. usually green; blackif X is even;white if
adjacent pixel isn't black
2. usually purple; blackif X is odd;white if
adjacent pixel isn't black
3. usually white; greenif X is oddand adjacent
pixel is black;
purpleif X is evenand
adjacent pixel is black
4. black
5. usually orange; blackif X is even;white if
adjacent pixel isn't black
6. usually blue; blackif X is odd;white if
adjacent pixel isn't black
7. usually white; orangeif X is oddand
adjacent pixel is black;
blueif X is evenand adjacent
pixel is black
For low-res, you say ``PLOT''. For
high-res, you say ``HPLOT''.
For low-res, the X coordinate and Y
coordinate each go from 0 to 39. For high-res, the X coordinate
goes from 0 to 279, and the Y coordinate goes from 0 to 159.
For low-res, you say ``HLIN'' to
draw a horizontal line, and you say ``VLIN'' to draw a vertical
line. For high-res, you can draw a line in any direction, by
saying ``HPLOT TO''. For example, if you say ___
hplot 250,140
hplot to 70.90
hplot to 180,114
the computer will plot the pixel (250,140), then draw a diagonal
line from there to pixel (70,90), then draw a diagonal line from
pixel (70,90) to pixel (180,114). You can combine those commands
into a single command:
hplot 250,140 to 70,90 to 180,114
Here's a complete program:
Use high-res. 10 home: hgr: vtab 21
Draw green lines. 20 hcolor=1: hplot 250,140
to 70,90 to 180,114
Write a caption. 30 print "welcome to the art
museum"
Pause. 40 for i = 1 to 4000: next
End the graphics. 50 text: home
Advanced commands (and page #)
BEEP (page 373). Instead of saying
BEEP, say:
print chr$(7);
SOUND (373). Your computer doesn't
understand the word SOUND.
PLAY (374). Your computer doesn't
understand the word PLAY.
PRINT USING (374). Your computer
doesn't understand PRINT USING.
Exponents (384). Your computer makes a mistake when handling
exponents.
According to mathematicians and most other computers, -52
means ``the negative of 52''; so it's -25. But the Apple makes
the mistake of thinking that -52 means ``the square of -5'',
which is 25.
If you say PRINT -5^2, the Apple will therefore print 25, which
mathematicians consider to be wrong.
For another example, suppose you say:
10 x=5
20 print -x^2
The Apple mistakenly thinks that line 20 means ``the square of
-X'', and therefore prints 25. (According to mathematicians and
other computers, line 20 means ``the negative of X2'', and so the
answer ought to be -25.)
The Apple's mistake makes the Apple incorrectly handle several
branches of mathematics. For example, the Apple incorrectly
solves quadratic equations and incorrectly graphs upside-down
parabolas ___ unless you help your Apple by typing parentheses.
To help your Apple, type parentheses whenever a minus sign is
followed by an exponentiated number:
print -(5^2)
Another example:
10 x=5
20 print -(x^2)
Those parentheses make the Apple print the correct answer, which
is -25.
Random integers (388). Omit the word RANDOMIZE. To get a random
integer from 1 to 5, instead of saying RND(5), say
1+INT(RND(1)*5).
Random decimals (391). For a random decimal between 0 and 1,
say RND(1) instead of just RND.
Left, right, middle (394). Your computer doesn't understand an
equal sign after MID$.
Searching in a string (395). Your computer doesn't understand
INSTR.
Clock (395). Your computer doesn't have a clock, and so it
doesn't understand TIME$, TIMER, or DATE$.
String-number conversion (395). Your computer makes STR$(81.4)
be the string ``81.4'', without a blank space.
Repeating characters (395). Your computer doesn't understand
STRING$.
Types of numbers (397). You can't use double-precision. To
create a real number, you can type as many digits as you wish,
but the computer remembers just the first 10 digits accurately,
and prints just the first 9 of them on your screen.
RAM consumption (397). Each real number consumes 5 bytes of
RAM.
Variables (397). For integer variables, you can use the symbol
% but not the word DEFINT.
Adjacent printing (407). You can't put a semicolon immediately
after INPUT.
LINE INPUT (407). You can't say LINE INPUT.
INPUT$ (407). Instead of saying A$=INPUT$(1), say GET A$.
Instead of saying ___
6 P$=INPUT$(4)
say:
6 get p1$: get p2$: get p3$: get p4$: p$=p1$+p2$+p3$+p4$
Joystick (408). Say PDL instead of STICK. If you say PDL and
then suddenly say PDL again, the computer won't compute the
second PDL accurately. To improve the accuracy, make the computer
pause before the second PDL, by inserting a FOR . . . NEXT loop:
100 x=pdl(0): for i = 1 TO 100: next: y=pdl(1)
Mouse (408). Your computer's version of BASIC is not designed
to work with a mouse.
SWAP (409). Your computer doesn't understand SWAP, so use the
alternative.
ON ERROR GO TO (414). Change ERROR to ERR, and change ``ON
ERROR GO TO 0'' to ``POKE 216,0''.
You can say RESUME, but you cannot put a number or word after
RESUME. You cannot say RESUME 30; you cannot say RESUME NEXT.
Instead of saying RESUME 30, say ``CALL 62248: GO TO 30''.
POKE (414). Normally,
the computer uses the whole screen. If you say ___
poke 33,20
the computer will use just the left part of the screen. That part
will be 20 characters wide. Whenever you try to type more than 20
characters on a line, the computer will put the excess characters
underneath, as part of the line below. The rightmost part of the
screen will be unused, and will act as a very wide right margin.
If you don't like a
width of 20, choose a different width instead.
Problem: write a program
that puts instructions on the screen and keeps the instructions
there permanently, while the rest of the screen changes.
Solution: turn on the computer, avoid saying POKE, write the
instructions on the rightmost part of the screen (by giving
ordinary PRINT statements with TAB or HTAB), and then say ``POKE
33,20''. That POKE prevents the computer from typing anything new
on the rightmost part of the screen ___ but the instructions you
typed there previously will remain.
Apple's LIST command is
peculiar. To edit your program more easily, instead of saying
just LIST, say:
poke 33,33
list
That makes the LIST be just 33 characters wide. That particular
width ___ 3 characters ___ makes the LIST easier to edit.
OPEN FOR OUTPUT (415).
This program prints ``eat'' and 4 and ``eggs'' onto a disk file
called SUE:
5 d$=chr$(4): ?d$"open sue": ?d$"write sue"
10 print "eat"
20 print 2+2
30 print "eggs"
40 ?d$"close"
OPEN FOR INPUT (415).
This program makes the computer read SUE and copy it to your
screen:
5 d$=chr$(4): ?d$"open sue": ?d$"read sue"
10 input a$
11 print a$
20 input b
21 print b
30 input c$
31 print c$
40 ?d$"close"
OPEN FOR APPEND (415).
This program makes the computer append ``good morning!'' to the
end of SUE:
10 d$=chr$(4): ?d$"open sue": ?d$"append sue"
20 print "good morning!"
30 ?d$"close"
Loops (416). Your
computer doesn't understand EOF(1). Instead of saying IF EOF(1)
THEN GO TO 1000, put this line at the top of your program: ON ERR
GO TO 1000.
LOF (416). Your computer
doesn't understand LOF(1).
PUT (417). This program
creates a random-access file called JIM whose record length is
21, and defines JIM's 7th, 9th, and 4th items:
5 d$=chr$(4): ?d$"open jim,l21"
10 ?d$"write jim,r" 7: print "love makes me giggle"
20 ?d$"write jim,r" 9: print "please hold my hand"
30 ?d$"write jim,r" 4: print "I love Lucy"
40 ?d$"close"
At the end of line 5,
the L21 means Length 21. ``LOVE MAKES ME GIGGLE'' contains 20
characters but requires a record length of 21, because the RETURN
key at the end of GIGGLE consumes 1 byte.
GET (417). This program
makes the computer tell you JIM's 7th item:
5 d$=chr$(4): ?d$"open jim,l21"
10 ?d$"read jim,r" 7: input x$: print x$
20 ?d$"close"
LOC (417). Your computer
doesn't understand LOC.
Numerical data (417).
The computer lets you put numbers in the file. You do not have to
convert the numbers to strings.
COMMODORE
Here's how to use BASIC on the Commodore 64 computer. (The
Commodore 64C and SX-64 are similar.) I'll explain how the
Commodore 128, 128D, 16, Plus 4, Pet, Super Pet, CBM, and Vic-20
differ. The Amiga resembles the Apple Mac (explained on page
427).
The keyboard (page 324)
On the Commodore 64, the keys are placed like this:
┌────────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬
────┬────┐┌───┐
│ │ ! │ " │ # │ $ │ % │ & │ ' │ ( │ ) │ │ │ │
│Clr │Inst││F2 │
│ │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ + │ - │ £
│Home│Del ││F1 │
├────────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴
─┬──┴────┤├───┤
│ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ │ │
│ ││F4 │
│ Ctrl │ │ │ │ │ │ │ │ │ │ │ @ │ * │
│Restore││F3 │
┌──┴─┬────────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬─
─┴────┬──┘├───┤
│Run │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ [ │ ] │ │
│ │F6 │
│Stop│ShiftLock│ │ │ │ │ │ │ │ │ │ : │ ; │ =
│Return │ │F5 │
├────┴────┬────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼─
──┬───┤ ├───┤
│ │ │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ │
│ │ │F8 │
│Commodore│Shift │ │ │ │ │ │ │ │ , │ . │ / │Shift│
│ ■ │ │F7 │
└─────────┴──────┴┬──┴───┴───┴───┴───┴───┴───┴───┴───┴┬──┴─────┴─
──┴───┘ └───┘
│ │
│ Space │
└───────────────────────────────────┘
The key in the bottom left corner is called the Commodore key.
In the diagram, I wrote the word ``Commodore'' on that key; but
if you look at your actual Commodore 64 keyboard, you'll see a
fancy C on that key instead.
The zero key is Swedish.
The computer capitalizes all letters automatically; so to type
a capital letter, do not press the SHIFT key.
There is no CAPS key.
The BACKSPACE key is marked DEL (which stands for DELETE). So
to backspace, make sure you hit the DEL key. Do not hit the keys
that show left-arrows; the left arrow keys do not backspace
correctly.
The ENTER key says RETURN on it.
Get started (page 325)
The computer's power switch is on the computer's right side.
Flip that switch ON. Then turn on the TV or monitor.
If you're using a TV, turn it to channel 3 or 4. To switch the
computer from channel 3 to channel 4 or back to channel 3, flip
the computer's channel-selection switch, which is on the back of
the computer. If the writing on the TV looks fuzzy, adjust the
TV's fine tuning.
Adjust the screen's brightness and contrast.
When the computer's on and functioning correctly, the computer
will say READY (instead of OK).
Commodore 128 and 128D Those computers resemble a Commodore
Plus 4 until you say ___
GO 64
which makes them imitate a Commodore 64 instead.
Math (page 326)
To type a plus sign, do not press the SHIFT key. (If you
accidentally press the SHIFT key, you'll be typing a crucifix
instead of a plus sign.)
Long commands on small screens (page 328)
A command can contain up to 80 characters. If you try to type
more than 80 characters in a command, the computer will ignore
the extra characters.
Colons (page 329)
Although you can put several statements on the same line, the
total number of characters in the line must not be greater than
80.
Ranges of lines
(page 332)
Your
computer does not understand the word DELETE. To delete lines 30,
31, 32, 33, and 34, you cannot type DELETE 30-34; instead, you
must type:
30
31
32
33
34
Arrow keys (page 332)
To edit line
30, first put line 30 onto the screen, by saying LIST 30. (Say
LIST, not EDIT: your computer doesn't understand the word EDIT.)
At the
keyboard's lower-right corner, you'll see a pair of arrow keys.
By pressing them with or without the SHIFT key, you can move the
cursor in all four directions. Move the cursor to the part of
line 30 you want to correct, then make your corrections.
To delete a
character, move the cursor just past that character, then press
the DELETE key. The DELETE key deletes the character to the left
of the cursor.
To replace a
character, move the cursor to the character you want to replace,
then type the new character you want instead.
To insert an
extra character in the middle of the line, move the cursor to
where you want that character to appear, then tap the INST key
while holding down the SHIFT key, then type the character you
want to insert. (To insert two characters, you must tap the INST
key with SHIFT, then type the first character, then tap the INST
key with SHIFT again, then type the second character.)
When you've
finished correcting the line, press the RETURN key, which tells
the computer to take the corrections seriously.
After
pressing the RETURN key, you might like to move the cursor to the
bottom of the screen. If you'd like to do that, press the
down-arrow key several times.
Hassle That editing procedure is easy, except for one hassle:
under certain unusual conditions, the cursor keys and INST/DEL
key don't work! Under those conditions, the cursor keys and
INST/DEL keys print strange symbols on your screen instead of
moving the cursor. If that happens to you, press the RETURN key
and then try again to edit the line. If it happens again, press
the RETURN key, then move the cursor to the bottom of the screen,
and type the whole line over again.
I said the hassle occurs ``under certain unusual conditions''.
Specifically, it occurs only if you begin an editing sequence (by
pressing the cursor keys and INST/DEL key) when you're at the
right-hand part of a line: the part that's to the right of an
unmatched quotation mark or to the right of an inserted space
(inserted by the INST key).
Clear the screen (page 333)
The CLEAR key is marked ``CLR HOME''. To clear the screen, hold
down the SHIFT key; and while you keep holding down the SHIFT
key, press the ``CLR HOME'' key.
Your computer does not understand CLS. To make line 10 clear
the screen, type this instead:
10 PRINT "";
To make that heart, hold down the SHIFT key with the CLR HOME
key.
Print on paper (page 333)
Your keyboard doesn't have a PRINT key or ECHO key, and your
computer doesn't understand LPRINT or LLIST. To print on paper,
here's what to do instead. . . .
Make sure the printer is plugged in, turned on, and full of
paper. Make sure any lights indicating POWER, READY, SELECT, and
ON LINE are glowing.
To activate the printer, type this:
OPEN 4,4: CMD 4
That makes the computer use paper instead of your screen.
Henceforth, the computer will print all its answers on paper
instead of on your screen.
If you ever want the computer to print on your screen again,
you must deactivate the printer, by typing:
PRINT#4: CLOSE 4
For example, to make the computer print just ``I LOVE YOU'' on
paper, you must activate the printer, then tell the computer to
print ``I LOVE YOU'', then deactivate the printer, like this:
OPEN 4,4: CMD 4
PRINT "I LOVE YOU"
PRINT#4: CLOSE 4
If a program prints on the screen but you want it to print on
paper instead, activate the printer before you type RUN. Here's
how:
OPEN 4,4: CMD 4
RUN
PRINT#4: CLOSE 4
Here's a fancy program that prints two poems. It prints ``LOVE
IS LIKE A DOVE'' on your screen, and prints ``LIFE IS FULL OF
STRIFE'' on paper:
NEW
10 PRINT "LOVE"
20 PRINT "IS LIKE A DOVE"
30 OPEN 4,4: CMD 4
40 PRINT "LIFE"
50 PRINT "IS FULL OF STRIFE"
60 PRINT#4: CLOSE 4
RUN
To LIST your program on
paper instead of on your screen, type this:
OPEN 4,4: CMD 4
LIST
PRINT#4: CLOSE 4
GO TO (page 334)
The BREAK key is marked
``RUN STOP''. So to abort a program, press the ``RUN STOP'' key.
If the computer is
printing on the screen too quickly for you read, you can make the
computer print more slowly. To slow the printing, hold down the
CTRL key while the computer prints. The computer will print
slowly, as long as you keep holding down the CTRL key. When you
lift your finger from that key, the computer will print quickly
again.
Save on disk (page 336)
When you flip the disk
drive's power switch, you create an electrical surge that damages
any disk inside the drive. So before flipping the drive's power
switch, make sure the drive is empty.
So to turn on your
computer system, first remove any disk from the drive; then flip
on the drive's switch; then turn on the computer. Memorize that
sequence: ``disks out, drive on, computer on.''
When you're done using
the computer, follow this sequence: ``disks out, computer off,
drive off''.
How to insert a disk To
put a disk into the drive, first make sure the disk drive's red
light is off. Then open the drive's door.
Insert the disk into the
drive. When you insert it, make sure the disk's label is on top
of the disk, and make sure the disk's big oval cutout goes into
the drive before the label does. Close the drive's door.
How to turn a blank disk
into a Commodore disk If you buy a blank disk and want your
computer to use it, you must turn the blank disk into a Commodore
disk.
To do that, insert the
blank disk into the drive (and close the door). To name the disk
ELIZABETH and give it ID number 00, type this:
OPEN 15,8,15,"N:ELIZABETH,00"
CLOSE 15
Each disk you create must have a different ID number. The ID
number can be any number from 00 to 99 ___ or it can even be a
pair of letters.
The drive's red light
will glow for about 2 minutes. When the light stops glowing, your
blank disk is finally a Commodore disk.
SAVE Instead of saying
SAVE ``JOE'', say:
SAVE "JOE",8
FILES Instead of saying
FILES, say:
LOAD "$",8
LIST
Watch the red light Whenever you give a disk command, the
computer sends the command to the disk drive and immediately says
READY. The word READY does not mean the drive's finished the
command yet. The drive doesn't finish the command until the
drive's red light stops glowing.
If you give a wrong disk command, the computer nevertheless
sends it to the drive and says READY. But when the drive receives
that command, the drive gripes by blinking its red light
repeatedly. So a repeatedly blinking light means you made an
error. A continually glowing light means your command is okay and
the drive is obeying it. Here's the rule: ``Blink is bad. Glow is
good.''
If you give a bad command and the light starts to blink, you
must stop the blinking, by typing this:
OPEN 15,8,15,"I"
CLOSE 15
Commodore 16, Plus 4, Pet, Super Pet, and CBM Turn a blank disk
into a Commodore disk by saying HEADER ``ELIZABETH'',I00,D0. Save
JOE by saying DSAVE ``JOE''. List the files on the disk by saying
DIRECTORY (if you have a Commodore 16 or Plus 4) or CATALOG D0
(if you have a Pet, Super Pet, or CBM).
How to choose a name (page 337)
Your program's name can be short (such as JOE) or long: up to
16 characters.
Load from disk (page 337)
Instead of saying LOAD ``JOE'', say this:
LOAD "JOE",8
Instead of saying RUN ``JOE'', say this:
LOAD "JOE",8
RUN
Commodore 16, Plus 4, Pet, Super Pet, and CBM Say DLOAD ``JOE''
instead of LOAD ``JOE'',8.
Edit the disk (page 337)
If you try to copy JOE onto a disk (by saying SAVE ``JOE'',8)
and the disk already contains a program named JOE, the drive will
gripe, by blinking its light. To avoid such griping, give this
command instead:
SAVE "@:JOE",8
In that command, the at-sign followed by the colon tells the
drive: save JOE, even though the disk already contains a JOE.
Instead of saying RENAME ``JOE'' TO ``FRED'', say:
OPEN 15,8,15,"R:FRED=JOE"
CLOSE 15
Commodore 16, Plus 4, Pet, Super Pet, and CBM You can say
RENAME ``JOE'' TO ``FRED''.
Space on the disk (page 337)
Instead of saying KILL ``JOE'', say:
OPEN 15,8,15,"S:JOE"
CLOSE 15
Commodore 16, Plus 4, Pet, Super Pet, and CBM Say SCRATCH
``JOE'' instead.
Tapes (page 337)
To copy a program onto a
tape, position the tape and notice the counter's number. Then
type the word SAVE. At the end of that word, press the RETURN
key.
Your computer will say:
PRESS RECORD & PLAY ON TAPE
Obey the computer: press the recorder's RECORD and PLAY buttons
at the same time as each other.
The computer will say:
OK
SAVING
READY.
Then press the recorder's STOP button.
How to read a program
from a tape. Put the tape into the recorder. (To do that, you
might have to press the recorder's EJECT button.)
By using the REWIND,
FAST FORWARD, PLAY, and STOP buttons (and the counter, if you
have one), position the tape to the program's beginning (or
slightly before). Then type the word LOAD. At the end of that
word, press the RETURN key.
The computer will say:
PRESS PLAY ON TAPE
Obey the computer, by pressing the recorder's PLAY button.
The computer will say:
OK
SEARCHING
FOUND
LOADING
READY.
Then press the recorder's STOP button.
Type the word LIST or
RUN; then press the RETURN key.
Long variable names (page 340)
Variable names must be
short. The name of a numeric variable must be just 1 or 2
characters; the name of a string variable must be just 1 or 2
characters followed by a dollar sign. If you try to make the
variable's name longer than that, the computer will handle it
unreliably.
If you want a variable
name that's 2 characters long, avoid the following 2-character
names, which have special meanings: GO, TO, IF, ON, FN, TI, ST,
OR.
INPUT (page 341)
Usually, you can abort a
program by pressing the RUN STOP key. But while the computer is
doing an INPUT statement, the RUN STOP key refuses to work,
unless you simultaneously hold down the RESTORE key.
Test whether your
Commodore 64 is old Commodore has sold two versions of the
Commodore 64. The old version has trouble handling the INPUT
statement; the new version handles the INPUT statement correctly.
Commodore switched to the new version around the beginning of
1984. Test whether your Commodore 64 is new or old, by running
this program:
10 INPUT "ARE YOU THE HAPPIEST PERSON IN THE WHOLE WORLD";A$
20 PRINT "YOU SAID ";A$
When you run the
program, and the computer asks ``ARE YOU THE HAPPIEST PERSON IN
THE WHOLE WORLD'', answer YES. If your Commodore 64 is new and
works correctly, it will reply:
YOU SAID YES
If your Commodore 64 is old, it will say this nonsense instead:
YOU SAID ARE YOU THE HAPPIEST PERSON IN THE WHOLE WORLD? YES
What to do if your Commodore 64 is old In an INPUT statement,
the computer's question is called the prompt. An old Commodore 64
can't correctly handle a prompt longer than 38 characters. For
example, this line's prompt's too long for an old Commodore 64:
10 INPUT "ARE YOU THE HAPPIEST PERSON IN THE WHOLE WORLD";A$
To prevent the old Commodore 64 from printing nonsense, shorten
the prompt to 38 characters or less, like this:
10 INPUT "ARE YOU THE HAPPIEST PERSON";A$
Better yet, eliminate the prompt altogether and replace it by a
PRINT statement, like this:
10 PRINT "ARE YOU THE HAPPIEST PERSON IN THE WHOLE WORLD?"
11 INPUT A$
Many examples in this book contain prompts that are too long
for an old Commodore 64 to handle. You must revise the examples
or buy a newer computer.
Vic-20 If you have a Vic-20 computer, you must keep the INPUT
statement's prompt short: no longer than 20 characters.
Pet, Super Pet, and CBM The RESTORE key is missing. Instead of
holding down the RUN STOP and RESTORE keys simultaneously, tap
the RETURN key.
Once upon a time (page 342)
Reminder: some of the prompts are too long for an old Commodore
64 to handle, so you must revise them.
Numeric input (page 344)
If your Commodore 64 is old, shorten the prompts to 38
characters or less.
If you forget to shorten a prompt, when you run the program and
input a number the computer will say:
REDO FROM START
Abort the program (by holding down the RUN STOP and RESTORE keys
simultaneously), then shorten the prompt.
Therapist (page 345)
If you try to invent your own examples using IF . . . THEN,
make sure each line of your program contains no more than 80
characters. You'll be tempted to make some of the IF . . . THEN
lines be longer, but longer lines won't work.
ELSE (page 349)
Your computer doesn't understand the world ELSE.
DATA . . . READ (page 350)
If you invent your own list of data, remember that each line of
your program must be short: no more than 80 characters!
FOR . . . NEXT (page 355)
If you indent the lines between FOR and NEXT, your computer
ignores the indentation. When you LIST your program, you won't
see any indentation. So don't bother to indent.
Renumbering (page 367)
Your computer doesn't
understand the word RENUM.
The PAUSE key (page 367)
Your keyboard lacks a
PAUSE key. Instead of pausing, you must either slow the computer
down (by holding down the CTRL key) or abort (by pressing the
STOP key).
After aborting a RUN,
you can make the computer continue where it left off, by typing:
CONT
The word CONT will make
the computer continue an aborted RUN, but will not make it
continue an aborted LIST.
Pet, Super Pet, and CBM
The CTRL key is messing. Hold down the RVS key instead.
Apostrophe (page 367)
Instead of an
apostrophe, type a colon followed by the word REM (which stands
for ``remark''). For example:
40 C=40: REM BECAUSE RUSS HAS 40 COMPUTERS
Zones (page 368)
Your screen has 4 zones.
Each zone is 10 characters wide, so the entire screen is 40
characters wide.
TAB (page 370)
On other computers, the
leftmost character in the line is said to be at position 1. But
on your computer, the leftmost character in the line is said to
be at position 0 instead; after position 0 come positions 1, 2,
3, etc.
So on your computer, if
you say TAB(0), you'll be going to the leftmost position; if you
say TAB(1), you will not be going to the leftmost position.
LOCATE (page 371)
Your computer doesn't
understand the word LOCATE. To make your computer move the
cursor, use the following trick instead. . . .
In the middle of your
program, write a PRINT statement that prints a string. (To do
that, type a line number, followed by the word PRINT, followed by
a quotation mark, followed by a string of characters, followed by
another quotation mark.) But while you're in the middle of typing
the string of characters, press a cursor-arrow key several times.
When you press the cursor key, the cursor will not move
immediately; instead, you'll see funny symbols in the middle of
the string.
Later, when you RUN the
program and the computer comes to that PRINT statement and sees
those funny symbols, the computer will automatically move the
cursor.
Here's the rule: while
you're typing a string, if you try to move the cursor, the
computer won't move the cursor until later when the program is
running.
So to write a program
that moves the cursor, tap the cursor-arrow keys in the middle of
a string in a PRINT statement.
Pixels (page 372)
To make your computer
easily handle pixels, you must insert a cartridge called Simon's
BASIC, which costs extra. For details about how to use that
cartridge, read the manual that comes with the cartridge.
Advanced commands (and page #)
Sounds (page 373). To make your computer easily produce sounds,
you must buy the Simon's BASIC cartridge. For details about how
to use that cartridge, read the manual that comes with the
cartridge.
PRINT USING (374). Your computer doesn't understand PRINT
USING.
Exponents (384). On the Commodore 64's keyboard, the exponent
key is next to the RESTORE key and says ``'' instead of ``^''.
Random integers (388). Instead of saying RANDOMIZE, say
R=RND(0). To get a random integer from 1 to 5, instead of saying
RND(5), say 1+INT(RND(1)*5).
Commodore 16, Plus 4, and Pet. Say R=RND(-TI) instead of
RANDOMIZE.
Random decimals (391). For a random decimal between 0 and 1,
say RND(1) instead of just RND.
Left, right, middle (394). Your computer doesn't understand an
equal sign after MID$.
Searching in a string (395). Your computer doesn't understand
INSTR.
Clock (395). Your computer doesn't understand DATE$. It omits
colons from the TIME$; so instead of saying TIME$=``13:45:07'',
say TIME$=``124507''.
Repeating characters (395). Your computer doesn't understand
STRING$.
Types of numbers (397). You can't use double-precision. To
create a real number, you can type as many digits as you wish,
but the computer remembers just the first 10 digits accurately,
and prints just the first 9 of them on your screen.
RAM consumption (397). Each real number consumes 5 bytes of
RAM.
Variables (397). For integer variables, you can use the symbol
% but not the word DEFINT.
Omitting the question mark (406). In the INPUT statement, you
can't replace the semicolon by a comma.
Adjacent printing (407). You can't put a semicolon immediately
after INPUT.
LINE INPUT (407). You can't say LINE INPUT.
INPUT$ (407). Instead of saying ___
20 A$=INPUT$(1)
say:
20 GET A$: IF A$="" THEN GO TO 20
Instead of saying INPUT$(4), you must GET one character at a
time.
Joystick (408). To make the computer look at joystick 1, say:
100 J=15-(PEEK(56321) AND 15)
If the joystick is pushed forward, J is 1. If the joystick is
pulled back, J is 2. If the joystick is pushed to the left, J is
4. If the joystick is pushed to the right, J is 8.
Combined motions produce combined numbers. For example, if the
joystick is pushed forward and to the left simultaneously, J is
1+4, which is 5.
If the joystick is untouched and centered, J is 0.
To make the computer look at joystick 2, say:
102 J2=15-(PEEK(56320) AND 15)
To see the numbers J and J2 on your screen continually, add
these lines:
110 PRINT J,J2
120 GO TO 100
Mouse (408). Your computer doesn't use a mouse.
SWAP (409). Your computer doesn't understand SWAP, so use the
alternative.
ON ERROR GO TO (414). Your computer doesn't understand ON ERROR
GO TO.
POKE (414). Your computer can display 16 colors, which are
numbered as follows: 0=black, 1=white, 2=red, 3=cyan, 4=purple,
5=green, 6=blue, 7=yellow, 8=orange, 9=brown, 10=light brown,
11=dark gray, 12=gray, 13=light green, 14=light blue, 15=light
gray.
Normally, the characters on the screen are light blue (color
14). To choose a different character color, poke the color number
into cell #646. For example, to create white characters, say:
POKE 646,1
Normally, the screen's
background color is a deep blue (color 6). To choose a different
background color, poke the color number into cell #53281. For
example, to make the background be red, say:
POKE 53281,2
Normally, the border
along the screen's edge is light blue (color 14). To choose a
different border color, poke the color number into cell #53280.
For example, to make the border be green, say:
POKE 53280,5
Vic-20. On a Vic-20
computer, colors 9 and 10 are pink, color 11 is light cyan, color
12 is light purple, and color 15 is light yellow. The border
color number must be less than 8. To handle the border and
background colors, don't use cells 53280 and 53281; instead
compute (the color number of the background you want)*16+(the
color number of the border you want)+8, then set C equal to that
sum and say:
POKE 36879,C
If you omit the +8 from the formula for C, the characters will be
inversed, so that you'll get light characters on a dark
background, instead of dark characters on a light background.
OPEN FOR OUTPUT (415).
This program prints EAT and 4 and EGGS onto a disk file called
SUE:
5 OPEN 2,8,2,"SUE,S,W"
10 PRINT#2, "EAT"
20 PRINT#2, 2+2
30 PRINT#2, "EGGS"
40 CLOSE 2
Notice you must say PRINT#2, not PRINT#1. In line 5, the W tells
the computer to Write SUE.
OPEN FOR INPUT (415).
This program makes the computer Read SUE and copy it to your
screen:
5 OPEN 2,8,2,"SUE,S,R"
10 INPUT#2, A$
11 PRINT A$
20 INPUT#2, B
21 PRINT B
30 INPUT#2, C$
31 PRINT C$
40 CLOSE 2
OPEN FOR APPEND (415).
This program makes the computer Append ``GOOD MORNING!'' to the
end of SUE:
10 OPEN 2,8,2,"SUE,S,A"
20 PRINT#2, "GOOD MORNING!"
30 CLOSE 2
Loops (416). Instead of
saying EOF(1), say STAND64=64.
LOF (416). Your computer
doesn't understand LOF.
Multiple files (416).
The main file is called #2. The next file is called #3: say OPEN
3,8,3,``TOM,S,W''. You can use #2, #3, #4, etc., up to #14. You
cannot use #1.
How to CLOSE (416).
After each CLOSE, you must put a number that says which file to
CLOSE.
PUT (417). This program
creates a random-access file called JIM whose record length is
20, and defines JIM's 7th, 9th, and 4th records:
5 OPEN 15,8,15: OPEN 2,8,2,"JIM,L,"+CHR$(20)
10 PRINT#15, "P"CHR$(2)CHR$(7)CHR$(0)CHR$(0): PRINT#2, "LOVE
MAKES ME GIGGLE";
20 PRINT#15, "P"CHR$(2)CHR$(9)CHR$(0)CHR$(0): PRINT#2, "PLEA
SE HOLD MY HAND";
30 PRINT#15, "P"CHR$(2)CHR$(4)CHR$(0)CHR$(0): PRINT#2, "I LO
VE LUCY";
40 CLOSE 2: CLOSE 15
GET (417). This program
makes the computer tell you JIM's 7th item:
5 OPEN 15,8,15: OPEN 2,8,2,"JIM"
10 PRINT#15, "P"CHR$(2)CHR$(7)CHR$(0)CHR$(0): INPUT#2, X$: P
RINT X$
20 CLOSE 2: CLOSE 15
LOC (417). Your computer
doesn't understand LOC.
Numerical data (417).
The computer lets you put numbers in the file. You do not have to
convert the numbers to strings.
TANDY MODEL 4
Here's how to use BASIC on Tandy's Radio Shack TRS-80 Model 4
computer. (The Models 4D and 4P are similar.)
Microsoft BASIC (page 322)
Tandy's Radio Shack TRS-80 Model 4 computer can handle two
versions of BASIC. The best version, called Model 4 BASIC,
requires a disk called Model 4 TRSDOS and BASIC Interpreter and
requires a drive to put it in. The alternative version, called
Model 3 BASIC, is only for people who lack a disk drive or lost
the disk called ``Model 4 TRSDOS and BASIC Interpreter'' or want
to run obsolete ``Model 3'' software.
I'll assume you have the disk called ``Model 4 TRSDOS and BASIC
Interpreter'' and a drive to put it in, so that you can run Model
4 BASIC.
Here's how to use Model 4 BASIC. . . .
The keyboard (page 324)
The keys are placed like this:
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┐
│ ! │ " │ # │ $ │ % │ & │ ' │ ( │ ) │ │ * │ = │ │
│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ : │ - │Break│
└─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┬─┘
│ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ ` │Clear│
│ │ │ │ │ │ │ │ │ │ │ @ │ │
┌───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
│ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ +~│ ±│
│Ctrl│ │ │ │ │ │ │ │ │ │ ;^│ Enter _│
└┬───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┼─┐
│ │ Z │ X │ C │ V │ B │ N │ M │ <{│ >}│ ?││ │ │
│Shift│ │ │ │ │ │ │ │ ,[│ .]│ /\│Shift ││
└─────┴───┼───┴───┴───┴───┴───┴───┴───┴───┼───┴┬─────┼─┼─┐
│ │ │DelLn│ │ │
│ Space │Caps│ ││■│
└───────────────────────────────┴────┴─────┴─┴─┘
Exception: if you bought the computer before 1984, the Ctrl
key, CLEAR key, and arrow keys are located differently.
The zero key is Swedish.
In that diagram, one of the keys looks like this:
┌───┐
│ <{│
│ ,[│
└───┘
If you tap that key, you'll be typing a comma. If you tap that
key while holding down the SHIFT key, you'll be typing the symbol
``<''. If you tap that key while holding down the CLEAR key,
you'll be typing the symbol ``[''. To type the remaining symbol
on that key (the ``{''), do this: hold down the CLEAR key; while
you keep holding down the CLEAR key, hold down the SHIFT key;
while holding down the CLEAR and SHIFT keys, tap the key that
shows the ``{''.
The BACKSPACE key has a left-arrow on it; so if you tap the
left-arrow key, the computer will erase the last character you
typed. If you tap the left-arrow key while holding down the SHIFT
key, the computer will erase the entire line you've been typing.
Get started (page 325)
When you flip the power switch, you create an electrical surge
that damages any disks inside the computer. So before flipping
the power switch, remove any disks from the computer.
Then flip on the computer's power switch, which is
underneath the computer's right side. The red light on the bottom
disk drive will turn on, then off.
Insert a disk that
contains ``Model 4 TRSDOS and BASIC Interpreter'' into the bottom
drive. When you insert it, make sure the disk's label is on top
of the disk, and make sure the disk's big oval cutout goes into
the drive before the label does. (The Model 4P is different: the
disk drive's slot is vertical instead of horizontal and requires
the disk's label to be on the disk's left side.) Close the
drive's door.
On the far right side of
the keyboard, you'll see an orange button. Press it.
The computer will say
``Date''. If the writing looks fuzzy, turn the brightness and
contrast dials, which are underneath the computer's left side.
Type the date. For example, if today is January 24, 1996, type
01/24/96 and then press the ENTER key.
The computer will say:
TRSDOS Ready
Type this word:
basic
Then press the ENTER key. After a brief pause, the computer will
say:
Ready
Notice that the computer
says ``Ready'' instead of ``OK''.
Whenever you're done
using the computer, remove any disks from the drives, before you
flip off the power.
What if computer gripes? (page 330)
If the computer gripes
at you, press the ENTER key immediately.
After pressing the ENTER
key, correct the error by retyping the line that the computer
griped about.
Arrow keys (page 332)
To edit line 20, type:
edit 20
If the first character
in line 20 is correct (and doesn't need to be edited), press the
SPACE bar. If the second character in line 20 is correct also,
press the SPACE bar again. Press the SPACE bar for each correct
character. Each time you press the SPACE bar, the character that
you said was correct appears on the screen.
When you get to the
point where the next character on the screen would be incorrect,
press the D key instead of the SPACE bar. The D key means: delete
the next character. Pressing the D key causes the next character
to be surrounded by backslashes, which mean the character is
being deleted.
To insert extra
characters in the line, press the SPACE bar several times, until
you get to where you want the characters to be inserted. Then
press the I key (which tells the computer you want to insert).
Then type the characters you want to insert. After typing them,
tap the up-arrow key while holding down the SHIFT key.
When you've finished all
the deletions and insertions for that line, press the ENTER key.
That makes the screen show the remainder of the line (the
right-hand part of the line), and tells the computer you've
finished editing the line.
Clear the screen (page 333)
To clear the screen by
using the CLEAR key, tap the CLEAR key while holding down the
SHIFT key.
Print on paper (page 333)
Your keyboard lacks a PRINT key. Instead of pressing a PRINT
key, tap the colon key (which is next to the zero key) while
holding down the CTRL key.
Your keyboard lacks an ECHO key. Instead of pressing an ECHO
key, type this:
system "link *do *pr"
To stop the echo, type this:
system "reset *do"
Save on disk (page 336)
If you buy a blank disk and want your computer to use it, you
must turn the blank disk into a Radio Shack disk.
To do that, put the blank disk into the top drive. Type:
system
format 1 (q=n)
The computer will turn the blank disk into a Radio Shack disk.
Then the computer will say ``TRSDOS Ready''.
Put Model 4 BASIC onto that disk, by typing:
backup :0 :1
The computer will ask whether you're sure; type the letter y. The
computer will copy all information from the bottom disk to the
top disk. Then the computer will say ``TRSDOS Ready'' again.
Tell the computer you want to use BASIC now, by typing:
basic
The computer will say ``Ready''.
FILES Instead of typing the word FILES, type this:
system "dir"
That makes the computer print a directory, showing the names of
all the programs in all your disk drives.
How to use drive 1 The main drive is called drive 0. The other
drive is called drive 1.
Normally, the computer uses drive 0. If you want JOE to be in
drive 1 instead of drive 0, put a colon and a 1 after JOE, like
this:
save "joe:1"
How to choose a name (page 337)
Your program's name can be short (such as JOE) or long: up to 8
characters. The name's first character must be a letter; the
remaining characters should be letters or digits.
Tapes (page 337)
Model 4 BASIC doesn't use tapes.
FOR . . . NEXT (page 355)
To indent you can hit the SPACE bar repeatedly. But to indent
more easily, hit the right-arrow key once.
The PAUSE key (page 367)
Your keyboard lacks a PAUSE key.
To make the computer pause, tap the @ key while holding down
the SHIFT key. (Normally, pressing those keys makes the screen
display an accent mark; but if you press those keys while a
program is running, the computer will pause instead.)
To stop pausing, press the SPACE bar.
LOCATE (page 371)
Your computer doesn't
understand the word LOCATE. Here's what to do instead . . .
Your computer considers
the screen's top line to be row 0, and the line below it to be
row 1. Your computer considers the row's leftmost character to be
in column 0, and the next character to be in column 1.
To print the word DROWN,
so that it begins at row 3 and column 7, type this:
print@(3,7), "drown"
Pixels (page 372)
To make Model 4 BASIC
handle pixels, you must buy a graphics board. Read the
instructions that come with the board.
Advanced commands (and page #)
BEEP (page 373). Your
computer doesn't understand the word BEEP.
SOUND (373). If you type
___
sound 4,10
the computer will produce a sound whose pitch is 4 and whose
duration is 10.
The pitch can be any
integer from 0 to 7: 0=D#, 1=E, 2=F, 3=F#, 4=G, 5=A, 6=A#, 7=B.
The duration can be any integer from 0 to 31: 0 means half a
second; 31 means about 15 seconds.
PLAY (374). Your
computer doesn't understand the word PLAY.
Exponents (384). To make
the symbol ``^'', tap the semicolon key while holding down the
CLEAR key.
Random integers (388).
Say RANDOM instead of RANDOMIZE.
Random decimals (391).
For a random decimal between 0 and 1, say RND(0) instead of just
RND.
Clock (395). To set the
time to 13:45:07, say SYSTEM ``TIME 13:45:07''. To set the date
to 01/24/1996, say SYSTEM ``DATE 01/24/1996''. Your computer
doesn't understand TIMER.
Joystick versus mouse
(408). Your computer doesn't use a joystick or mouse.
POKE (414). If you're
using TRSDOS version 6.02, cell #2968 normally contains the
number 95, which is the ASCII code number for an underline. That
makes the cursor's shape be an underline.
To change the cursor's
shape, POKE a different number into cell #2968. For example, to
change the cursor's shape to the letter A (whose ASCII code
number is 65), say:
poke 2968,65
To create a ``feminist
computer'', turn the cursor into a female-sign (whose ASCII code
number is 250), by saying:
poke 2968,250
Older versions of
TRSDOS. Cell #2968 does that only in TRSDOS version 6.2. Instead
of cell #2968, version 6.00 uses cell #3040; version 6.01 uses
cell #3017.
When you turn on the
computer, versions 6.00 and 6.01 begin by making the cursor be a
double-underline (whose ASCII code is 176) instead of a
single-underline.
OPEN FOR OUTPUT (415).
Instead of saying OPEN ``SUE'' FOR OUTPUT AS 1, say OPEN
``O'',1,``SUE''. In the quotation marks, be sure to put the
letter O, not a zero.
OPEN FOR INPUT (415).
Instead of saying OPEN ``SUE'' FOR INPUT AS 1, say OPEN
``I'',1,``SUE''.
OPEN FOR APPEND (415).
Instead of saying OPEN ``SUE'' FOR APPEND AS 1, say OPEN
``E'',1,``SUE''. The ``E'' tells the computer to Extend the file.
LOF (416). Your computer
doesn't understand the usual meaning of LOF(1).
PUT (417). Instead of
saying OPEN ``JIM'' AS 1 LEN=20, say OPEN ``R'',1,``JIM'',20.
End of the file (417).
LOF(1) is the number of records in the file (instead of being the
number of bytes).
TANDY COLOR COMPUTER
Here's how to use BASIC on Tandy's Radio Shack TRS-80 Color
Computer 2. (The Color Computer 1, Color Computer 3, and Micro
Color Computer are similar.)
Microsoft BASIC (page 322)
When you buy the Color Computer 2, make sure you get extended
color BASIC, not standard color BASIC (which costs less but is
crummy). The following comments apply to extended color BASIC.
The keyboard (page 324)
The keys are placed like this:
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬─────┬───┬───┬─────┐
│ ! │ " │ # │ $ │ % │ & │ ' │ ( │ ) │Revrs│ * │ = │ │
│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ : │ - │Break│
┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┼───┴─┬─┴───┬─┴─┐
│ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │Pause│DelLn│ ] │
│ │ │ │ │ │ │ │ │ │ │ │ @ │ │ ■ │
└┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬────┴──┬──┴──┬┘
│ [ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ + │ │ \ │
│ │ │ │ │ │ │ │ │ │ │ ; │ Enter │Clear│
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┴─┬───┘
│ │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ │
│Shift│ │ │ │ │ │ │ │ , │ . │ / │ Shift │
└─────┴───┴─┬─┴───┴───┴───┴───┴───┴───┴───┼───┴───────┘
│ │
│ Space │
└─────────────────────────────┘
The computer capitalizes all letters automatically; so to type
a capital letter, do not press the SHIFT key.
There is no CAPS key.
The BACKSPACE key has a left-arrow on it; so if you tap the
left-arrow key, the computer will erase the last character you
typed. If you tap the left-arrow key while holding down the SHIFT
key, the computer will erase the entire line you've been typing.
Get started (page 325)
Attach the computer to a TV. Turn on the computer's power, by
pressing the POWER button, which is at the computer's rear. Turn
on the TV, and turn it to channel 3 or 4. To switch the computer
from channel 3 to channel 4 or back to channel 3, flip your
computer's channel-selection switch, which is at the computer's
rear. When the computer's on and functioning correctly, the
computer will say OK.
Ranges of lines (page 332)
Say DEL instead of DELETE.
Arrow keys (page 332)
To edit line
20, type:
EDIT 20
If the first
character in line 20 is correct (and doesn't need to be edited),
press the SPACE bar. If the second character in line 20 is
correct also, press the SPACE bar again. Press the SPACE bar for
each correct character. Each time you press the SPACE bar, the
character that you said was correct appears on the screen.
When you get
to the point where the next character on the screen would be
incorrect, press the D key instead of the SPACE bar. The D key
means: delete the next character. Pressing the D key prevents the
next character from appearing on the screen.
To insert
extra characters in the line, press the SPACE bar several times,
until you get where you want the characters to be inserted. Then
press the I key (which tells the computer you want to insert).
Then type the characters you want to insert. After typing them,
tap the up-arrow key while holding down the SHIFT key.
When you've
finished all the deletions and insertions for that line, press
the ENTER key. That makes the screen show the remainder of the
line (the right-hand part of the line), and tells the computer
you've finished editing the line.
Print on paper (page 333)
Your
keyboard doesn't have a PRINT key or an ECHO key. Instead of
saying ``LPRINT'' say ``PRINT#-2,''. For example, to print ``I
LOVE YOU'' on paper, type this:
PRINT #-2, "I LOVE YOU"
Even though
the computer doesn't understand ``LPRINT'', it does understand
``LLIST''.
Save on disk (page 336)
When you flip the disk drive's power switch, you create an
electrical surge that damages any disk inside the drive. So
before flipping the drive's power switch, make sure the drive is
empty.
When you're done using the computer, remove any disk from the
drive, before you flip off the power.
How to insert a disk To put a disk into the drive, open the
drive's door, then insert the disk into the drive. When you
insert it, make sure the disk's label is on top of the disk, and
make sure the disk's big oval cutout goes into the drive before
the label does. Close the drive's door.
(Exception: if your drive was made before 1985, the drive's
slit is vertical instead of horizontal, and the disk's label is
on the left side of the disk instead of the top.)
How to turn a blank disk into a Radio Shack disk If you buy a
blank disk and want your computer to use it, you must turn the
blank disk into a Radio Shack disk.
To do that, insert the blank disk into the drive (and close the
door). Then type DSKINI0. (That last character is a zero, not the
letter O.)
The disk drive's red light will glow for 40 seconds. When the
light stops glowing, the computer will say OK.
FILES Instead of saying FILES, say DIR (which stands for
``directory'').
How to use drive 1 The main drive is called drive 0. If you
have an extra drive, that extra is called drive 1.
Normally, the computer uses drive 0. If you want JOE to be in
drive 1 instead of drive 0, put a colon and a 1 after JOE, like
this:
SAVE "JOE:1"
To make the computer print the names of all the programs in
drive 1, type this:
DIR 1
How to choose a name (page 337)
Your program's name can be short (such as JOE) or long: up to 8
characters. the name's first character must be a letter; the
remaining characters should be letters or digits.
Edit the disk (page 337)
Instead of saying RENAME ``JOE'' to ``FRED'', say RENAME
``JOE/BAS'' to ``FRED/BAS'', to emphasize that JOE was written in
BASIC.
Space on the disk (page 337)
Instead of saying KILL ``JOE'', say KILL ``JOE/BAS''.
Tapes (page 337)
To copy a program onto a
tape, position the tape and notice the counter's number. Then
press the recorder's RECORD and PLAY buttons at the same time as
each other. Type this:
CSAVE "A"
The computer will copy the program onto tape and then say OK.
Press the recorder's STOP button.
How to read a program
from a tape Put the tape into the recorder. (To do that, you
might have to press the recorder's EJECT button.)
Type the word CLOAD.
Press the recorder's
REWIND button. When the tape is rewound, press the recorder's
STOP button. Push the counter's button, so the counter becomes
zero.
Press the recorder's
FAST FORWARD button. Look at the counter. When the number on the
counter is almost up to the number of the program's beginning,
press the recorder's STOP button.
Press the recorder's
PLAY button. The computer will search on the tape for the
beginning of the program. When the computer reaches the beginning
of the program, the computer will print an F.
Then the computer begins
reading the program. When the computer finishes reading it, the
computer will say OK.
Press the recorder's
STOP button. Type the word LIST or RUN.
Long variable names (page 340)
Variable names must be
short. The name of a numeric variable must be just 1 or 2
characters: the name of a string variable must be just 1 or 2
characters followed by a dollar sign. If you try to make the
variable's name longer than that, the computer will handle it
unreliably.
If you want a variable
name that's 2 characters long, avoid the following 2-character
names, which have special meanings: GO, TO, IF, ON, FN, OR.
INPUT (page 341)
For some of the programs
that involve string input, the computer will gripe about being
``out of string space''; the computer will say:
?OS ERROR
To stop the computer
from griping, insert this statement:
1 CLEAR 1000
If the computer still says OS ERROR, raise 1000 to a higher
number, like this:
1 CLEAR 2000
Keep raising, until the computer stops that gripe. On the other
hand, if you raise too high, the computer will say ___
?OM ERROR
That means you must go lower.
So if the computer says
``OS ERROR'', you should raise the CLEAR number; if the computer
says ``OM ERROR'', you should lower the CLEAR number.
Here's why. . . .
Your program contains two kinds of strings: the strings that
are known, and the strings that are unknown. For example, if you
say ___
10 G$="DOWN"
the G$ is known to be DOWN. If you say ___
10 INPUT "WHAT IS YOUR NAME";N$
the N$ is unknown, because its value depends on what the human
inputs.
Normally, the computer reserves enough memory space to hold
just 200 unknown characters. If your program needs more
characters than that ___ for example, if your program inputs 7
strings, each having 30 characters, so that the total number of
characters is 210 ___ the computer will gripe, and say ``out of
string space error'' (OS ERROR).
If you say ___
1 CLEAR 1000
the computer will reserve enough space to hold 1000 unknown
characters, instead of the normal quantity (which is just 200).
How much space can you reserve? That depends on how much memory
you bought for your computer. If your computer has little memory,
and you try to reserve more space than your computer has, the
computer will give up, and say ``out of memory error'' (OM
ERROR).
FOR . . . NEXT (page 355)
If you indent the lines between FOR and NEXT, your computer
ignores the indentation. When you LIST your program, you won't
see any indentations. So don't bother to indent.
The PAUSE key (page 367)
To make the computer pause, hold down the SHIFT key; and while
you keep holding down the SHIFT key, tap the @ key.
To stop pausing, press the SPACE bar.
Zones (page 368)
Each zone is 16 characters wide. Your screen has just 2 zones,
so your screen is 32 characters wide.
TAB (page 370)
On other computers, the leftmost character in the line is said
to be at position 1. But on your computer, the leftmost character
in the line is said to be at position 0 instead; after position 0
come positions 1, 2, 3, etc.
So on your computer, if you say TAB(0), you'll be going to the
leftmost position; if you say TAB(1), you will not be going to
the leftmost position.
LOCATE (page 371)
Your computer doesn't understand the word LOCATE. Here's what
to do instead . . .
Your computer considers the screen's top line to be row 0, and
the line below it to be row 1. Your computer considers the row's
leftmost character to be in column 0, and the next character to
be in column 1.
To print the word DROWN, so that it begins at row 3 and column
7, type this:
PRINT@32* 3+7, "DROWN"
Pixels (page 372)
To use pixels, type
these lines:
10 PMODE 4: PCLS: SCREEN 1
10000 GO TO 10000
Line 10 warns the
computer that you want to use pixels. (In that line, the PMODE 4
makes the X coordinate go from 0 to 255 and the Y coordinate go
from 0 to 191. The PCLS makes the graphic screen begin by being
blank. The SCREEN 1 makes the computer show you the graphics
instead of text.)
Line 10000, at the
bottom of your program, makes the computer pause, so that you can
admire whatever graphics have been drawn.
Between lines 10 and
10000, you can insert lines containing the following commands. .
. .
To draw a dot at pixel
(100,100), say PSET (100,100).
To draw a line from
pixel (0,0) to pixel (100,100), say LINE (0,0)-(100,100),PSET.
To draw a box
(``rectangle'') that has a corner at pixel (0,0) and has an
opposite corner at pixel (100,100), say LINE
(0,0)-100,100),PSET,B.
To draw a box that has a
corner at (0,0) and an opposite corner at (100,100), and also
make the computer fill in the box (i.e., paint the box's
interior), say LINE (0,0)-(100,100),PSET,BF.
Each of those commands
contains the word PSET. To erase the shape that you drew, give
the same command again, but replace the PSET by PRESET.
To draw a circle
centered at pixel (100,100), and to make the circle's radius be
50, say CIRCLE (100,100),50. To erase that circle, say CIRCLE
(100,100),50,0.
To paint the inside of
any shape (such as a circle or a person), say PAINT and mention a
point inside the shape. For example, to fill in an outline that
has (101,101) inside it, say PAINT (101,101). To erase that paint
(and also the shape itself), say PAINT (101,101),0.
To erase the entire
drawing (``clear the screen''), say PCLS.
If you say SCREEN 0, the
screen will stop showing graphics (and will show text instead),
until you say SCREEN 1 (which brings back the graphics).
To get started
experimenting with all those commands, run the following program;
it draws a line from (0,0) to (100,100) and then draws a circle
centered at pixel (100,100) and with radius 50:
10 PMODE 4: PCLS: SCREEN 1
20 LINE (0,0)-(100,100)
30 CIRCLE (100,100),50
10000 GO TO 10000
The computer draws the shapes in green, on a black background.
After you've admired the pretty picture, abort the program by
pressing the BREAK key.
Colors To get colors,
line 10 must say PMODE 3 instead of PMODE 4.
After you've said PMODE
3, whenever the computer draws (or erases) a pixel, it does the
same thing to the pixel next to it. Specifically, if you tell the
computer to draw (or erase) a pixel whose X coordinate is even,
the computer will do the same thing to the pixel at its right
(whose X coordinate is odd). If you tell the computer to draw (or
erase) a pixel whose X coordinate is odd, the computer will do
the same thing to the pixel at its left (whose X coordinate is
even).
After you've said PMODE
3, the computer normally draws red shapes on a green background.
But if you don't like those colors, you can pick different colors
instead.
To choose different colors, use these code numbers: 1=green,
2=yellow, 3=blue, and 4=red. For example, to draw yellow shapes
on a blue background, say COLOR 2,3. the traditional place to say
COLOR 2,3 is in line 10, like this:
10 PMODE 3: COLOR 2,3: PCLS: SCREEN 1
If you prefer, you can say COLOR 2,3 later in your program
instead. If you say it later, the shapes at the beginning of your
program will be unaffected by that COLOR statement. When you draw
new shapes after giving that COLOR statement, the shapes that
were already on the screen (in their old colors) remain
unchanged; they keep their original colors.
When you say PRESET (in the middle of a dot or line or box
command), the computer assumes you want the shape erased; to
erase the shape, the computer redraws the shape by using the
background color. If you recently changed the background color
(by saying COLOR), the erasure will be done by using the new
background color, which won't match the old background color.
If you say CIRCLE (100,100),50,2 the computer will draw the
circle in yellow (because the 2 at the end of the CIRCLE command
is the code number for yellow). Do not put a 0 at the end of the
CIRCLE command, since 0 is not an acceptable color number. You
must pick a number from 1 to 4.
If you say PAINT, you must say which pixel to start painting
at; you must say which color paint to use; and you must remind
the computer of what color the outline had that you're filling
in. For example, if you want the computer to paint starting at
pixel (101,101) ___ which is inside the outline ___ and you want
the computer to use yellow paint (whose code number is 2), and
the outline that you're filling in was drawn in blue (whose code
number is 3), say PAINT (101,101),2,3.
Near the end of your program, if you say SCREEN 1,1, you'll see
a ``negative'' of your picture. In the ``negative'', green
becomes light blue (even though Radio Shack's manual incorrectly
says it becomes ``buff''), yellow becomes cyan (greenish blue),
blue becomes magenta (purplish red), and red becomes orange. All
future drawings (even by other programs) will be done using those
``negative'' colors, unless you tell the computer to return to a
``positive'', by saying SCREEN 1,0.
Advanced commands (and page #)
BEEP (page 373). Your computer doesn't understand the word
BEEP.
SOUND (373). If you type ___
SOUND 100,15
the computer will produce a sound whose pitch is 100. You can
choose any pitch from 1 to 255.
In that example, the 15 makes the computer produce the sound
for 1 second. If you want the sound to last longer ___ so that
its lasts 2 seconds ___ replace the 15 by 15*2. For 10 seconds,
say 15*10. (That's because your computer's metronome beats 15
times per second.)
PLAY (374). Your computer handles the PLAY command slightly
differently than other computers.
Your computer can't play octaves 0 or 6: it plays just octaves
1 through 5. If you don't specify an octave, the computer will
play in octave 2.
To create a dotted eighth note, put a dot after the 8 instead
of after the note's name. For example, to make E be a dotted
eighth note, say ``L8.E''.
If you say PLAY ``T1'', the computer will play 56 quarter notes
per minute, which is very slow (largo). If you say PLAY ``T2'',
the computer will play twice as fast: 112 quarter notes per
minute (moderato). If you say PLAY ``T3'', the computer will play
three times as fast: 168 quarter notes per minute (vivace). You
can pick speeds up to PLAY ``T255'', which is ridiculously fast!
If you don't specify a tempo, the computer will play at speed T2,
which is 112 quarter notes per minute (moderato).
Normally, the computer
plays at volume 15; but you can change the volume. To switch to
volume 4 (which is lower, quieter), say:
PLAY "V4"
You can switch to any volume from 1 to 31.
If you try the bottom
example in the main text, slow down the tempo: change T150 to T2.
Exponents (384). For
exponents, the TRS-80 Color Computer 2 (with extended color
BASIC) uses the symbol ``'' instead of ``^''.
Random integers (388).
Omit the word RANDOMIZE.
Random decimals (391).
For a random decimal between 0 and 1, say RND(0) instead of RND.
Clock (395). Your
computer doesn't understand TIME$ or DATE$.
Here's how to use the
TIMER function. First, reset the TIMER to zero, by saying
TIMER=0. Later, whenever you say PRINT TIMER/60, the computer
will tell you how many seconds ago the timer was reset.
Unfortunately, the TIMER
lasts only 18 minutes; after 18 minutes, it resets itself to zero
again.
Types of numbers (397).
All variables are reals: you can't create integer variables or
double-precision variables.
To create a real number,
you can type as many digits as you wish, but the computer
remembers just the first 10 digits accurately, and prints just
the first 9 of them on your screen.
RAM consumption (397).
Each real number consumes 5 bytes of RAM.
Omitting the question
mark (406). In the INPUT statement, you can't replace the
semicolon by a comma.
Adjacent printing (407).
You can't put a semicolon immediately after INPUT.
INPUT$ (407). Instead of
saying ___
20 A$=INPUT$(1)
say:
20 A$=INKEY$: IF A$="" THEN GO TO 20
Instead of saying
INPUT$(4), you must INKEY$ one character at a time.
Joystick (408). Say
JOYSTK instead of STICK. The coordinates of the right joystick
are JOYSTK(0) and JOYSTK(1). The coordinates of the left joystick
are JOYSTK(2) and JOYSTK(3).
When the computer comes
to a line that mentions JOYSTK(0), the computer looks at both
joysticks and computes JOYSTK(0), JOYSTK(1), JOYSTK(2), and
JOYSTK(3). If your program mentions JOYSTK(1) or JOYSTK(2) or
JOYSTK(3), without mentioning JOYSTK(0), the computer won't look
at the joysticks.
Mouse (408). Your
computer's version of BASIC is not designed to work with a mouse.
SWAP (409). Your
computer doesn't understand SWAP, so use the alternative.
ON ERROR GO TO (414).
Your computer doesn't understand ON ERROR GO TO.
OPEN FOR OUTPUT (415).
Instead of saying OPEN ``SUE'' FOR OUTPUT AS 1, say OPEN
``O'',1,``SUE''. In the quotation marks, be sure to put the
letter O, not a zero.
OPEN FOR INPUT (415).
Instead of saying OPEN ``SUE'' FOR INPUT AS 1, say OPEN
``I'',1,``SUE''.
OPEN FOR APPEND (415).
Your computer doesn't understand APPEND.
LOF (416). Your computer
doesn't understand the usual meaning of LOF(1).
PUT (417). Instead of
saying OPEN ``JIM'' AS 1 LEN=20, say OPEN ``D'',1,``JIM'',20.
End of the file (417).
LOF(1) is the number of records in the file (instead of being the
number of bytes).
Numerical data (417).
Instead of using MKI$, MKS$, or MKD$, use MKN$. It MaKes a Number
into a 5-byte string.
Instead of using CVI,
CVS, or CVD, use CVN. It ConVerts a 5-byte string to a Number.
OTHER COMPUTERS
Here's how to use BASIC on other kinds of computers.
Tandy
On page 443, I explained how to use BASIC on the TRS-80 Model 4
(and Model 4D and Model 4P).
On page 445, I explained how to use BASIC on the TRS-80 Color
Computer 2 (and Color Computer 1, Color Computer 3, and Micro
Color Computer).
If your computer is numbered between 1000 and 5000 (such as the
Tandy 1000, 1200, 1400, 2000, 3000, 4000, or 5000), it's an IBM
PC clone (explained on page 422).
Here's how to use the TRS-80 Model 3. (Models 1, 2, 12, 16,
100, 102, 200, 6000, and Pocket Computers are similar.)
The keyboard. Similar to Color Computer. You cannot create the
symbols ``['', ``]'', and ``\'' by holding down the SHIFT key. To
create the symbol ``['', tap the up-arrow key. To switch to lower
case, tap the zero key while holding down the SHIFT key.
Get started, if you don't have a disk. While holding down the
BREAK key, flip on the power switch, which is underneath the
computer's right side. The computer will say ``Cass''. If the
writing looks fuzzy, turn the brightness and contrast dials,
which are underneath the computer's left side. Press the ENTER
key. The computer will say ``Memory Size''. Press ENTER again.
The computer will say READY.
Get started, if you have a disk. Follow Model 4's procedure,
with these exceptions. . . . The disk you insert contains ``Model
3 TRSDOS'' instead of ``Model 4 TRSDOS''. After you enter the
date (and press the ENTER key), the computer will say ``Enter
Time''. Type the time by using a 24-hour clock; for example, if
the time is 1:45 PM, type 13:45:00 and press ENTER. The computer
will say ``How Many Files''; press ENTER. The computer will say
``Memory Size''; press ENTER. Then the computer will say READY.
What if the computer gripes? Same as Model 4.
Arrow keys. Similar to Model 4. When you press the D key, the
character will be surrounded by exclamation points instead of
backslashes.
Print on paper. Your computer lacks a PRINT key. Instead of
pressing a PRINT key, do the following: while depressing the
down-arrow key and left SHIFT key simultaneously, tap the colon
key.
Your computer lacks an ECHO key. If you're using a disk, you
can turn the echo on by typing this ___
CMD "Z","ON"
and turn the echo off by typing this:
CMD "Z","OFF"
Save on disk. Similar to Model 4. To make the computer print
the names of all programs on disk 0, say:
CMD "D:0"
To make the computer print the names of all programs on disk 1,
say:
CMD "D:1"
Do not say FILES or SYSTEM ``DIR''.
To turn a blank disk into a Radio Shack disk, do not say
SYSTEM, etc. Instead, put the blank disk into the top drive, and
then say:
CMD "S"
BACKUP :0 :1
The computer will ask, ``Source Disk Master Password?'' Type the
word PASSWORD. The computer will copy all information from the
bottom drive's disk to the blank disk. The computer will say
``TRSDOS Ready''. Type the word BASIC. The computer will say
``How Many Files''. Press the ENTER key. The computer will say
``Memory Size''. Press the ENTER key. The computer will say
READY.
How to choose a name. Same as Model 4.
Tapes. Similar to Color Computer. The computer will say READY
instead of OK, and will print a pair of asterisks instead of an
F. The right asterisk flashes.
Long variable names. Same as Color Computer.
INPUT. Similar to Color Computer. If you're using a disk, the
computer says ``Out of string space'' instead of ``?OS ERROR'',
and says ``Out of memory'' instead of ``?OM ERROR''. If you don't
say CLEAR, the computer reserves enough memory space to hold just
50 unknown characters.
FOR...NEXT. Same as
Model 4.
Renumbering. To
renumber, you must be using disks, and you must say NAME instead
of RENUM.
PAUSE key. To pause (or
stop pausing), tap the @ key while holding down the SHIFT key.
Zones. Each zone is 16
characters wide. Your screen has just 4 zones, so your screen is
64 characters wide.
TAB. Same as Color
Computer.
LOCATE. Similar to Color
Computer. Say 64 instead of 32.
Pixels. The X coordinate
goes from 0 to 127. The Y coordinate goes from 0 to 47. Say SET
instead of PLOT. Your computer doesn't understand LINE, CIRCLE,
PAINT, or colors.
Sounds. Your computer
can't produce sounds.
Exponents. Instead of
typing the symbol ``^'', type the symbol ``['', by pressing the
up-arrow key.
Random integers,
decimals. Same as Model 4.
Clock. To set the date
to 01-24-1996, say:
POKE 16924,1: POKE 16923,24: POKE 16922,96
To set the time to 13:45:07, say:
POKE 16921,13: POKE 16920,45: POKE 16919,7
If you say PRINT TIME$, the computer will print both the date and
time. Your computer doesn't understand TIMER.
POKE. Same as Model 4,
but uses cell #16419 instead of #2968, and normally makes the
cursor be a double-underline (ASCII 176) instead of a
single-underline.
Omitting the question
mark, adjacent printing, INPUT$. Same as Color Computer.
Joystick. Your computer
doesn't use joysticks.
SWAP. Your computer
doesn't understand SWAP, so use the alternative.
OPEN FOR OUTPUT, INPUT,
APPEND, LOF, PUT, end of the file. Same as Model 4.
Laser 128
The Laser 128 computer
imitates the Apple 2c (which is explained on page 431).
Franklin Ace
The Franklin Ace
computer imitates the Apple 2+ (which is explained on page 431).
Coleco Adam
The Adam computer,
manufactured by Coleco, resembles the Apple 2+ (which is
explained on page 431). For a list of ways in which the Adam
computer differs from the Apple 2+, get an earlier edition of The
Secret Guide to Computers by phoning me at 617-666-2666.
Computers that use CP/M
The CP/M operating
system is used by many old computers, such as the Kaypro 2,
Kaypro 2X, Kaypro 4, Kaypro 10, and old relics manufactured by
Osborne, Morrow, Cromemco, Vector, North Star, Xerox, and Zorba.
On CP/M computers, begin
by learning MBASIC (which is also called Microsoft BASIC and
BASIC-80), since that version of BASIC is the easiest to learn.
It resembles Tandy Model 4 BASIC (which is explained on page
443). For more details, get an earlier edition of The Secret
Guide to Computers by phoning me at 617-666-2666.
Atari, Texas Instruments, TimexSinclair
For details, get an
earlier edition of The Secret Guide to Computers by phoning me at
617-666-2666.